2013-12-20 64 views
2

我正在使用MAD-Bee(Managed ADB)庫來訪問C#中的ADB。我只是想獲得連接到PC的設備列表。從命令提示符使用ADB時,我正在獲取設備列表,但在C#表單中獲得了0。
這裏是我試過的代碼 -在C中訪問android設備#

AndroidDebugBridge mADB; 
    String mAdbPath; 
    IList<Device> mDeviceList = null; 
    public Form1() 
    { 
     InitializeComponent(); 
     mAdbPath = Environment.GetEnvironmentVariable("ANDROID_ROOT"); 
     mADB = AndroidDebugBridge.CreateBridge(mAdbPath + "\\platform-tools\\adb.exe", true); 
     mADB.Start(); 

     var list = mADB.Devices; 
     Console.WriteLine(""+list.Count); 
    } 

的問題是MAD蜜蜂沒有任何適當的文件或指導如何開始使用它。在這方面的任何幫助?

+1

我想指出,最終,你有什麼工作。但是目前AndroidDebugBridge.Devices依賴於DeviceMonitor,它在當前狀態下不起作用。我已經提出這個[問題](https://madb.codeplex.com/workitem/21255),並將其更改爲使用獲取設備列表的「當前工作方式」。 –

+0

感謝您發佈此問題。我很想看到這個圖書館進一步發展。 – noob

回答

3

Woops發現它現在 -

List<Device> devices = AdbHelper.Instance.GetDevices (AndroidDebugBridge.SocketAddress); 

更多信息,在這些測試中可用 -

MadBee Tests

+1

目前測試是查找示例的最佳位置。我在這個項目上仍然有很多工作要做,但我在空閒時間工作,沒有太多的工作。我是唯一活躍的開發人員,我使用「主動」這個術語來鬆散地使用。應該有大部分功能的測試。我碰巧遇到了這個問題,否則我會回答它。 –

+0

我正在爲我的一個寵物項目使用該庫來爲Android開發人員製作開發工具。我自己對源代碼進行了一些修改,並且很樂意在能夠正確地打磨它們的情況下儘快與他們分享。感謝您開發這個。你搖滾:-) – noob

2

我想建議你用C#另一個庫爲您的應用。

我在XDA上找到了AndroidLib.dll,它提供了一種連接我的C#應用​​程序的方式。

線程可以在這裏找到:

http://forum.xda-developers.com/showthread.php?t=1512685

他有GitHub的源和在GitHub的他已經在Visual Studio解決方案文件,例如從項目以及詳細的使用學習。