无法使用ADB在VS中调试Xamarin Android应用程序

Pet*_*erX 5 c# android xamarin.android xamarin visual-studio-2015

我试图TipCalc在Visual Studio中运行示例Xamarin(Android)应用程序,但是在它编译并运行Android模拟器后,我被告知:

adb服务器版本(32)与此客户端不匹配(36)

我该如何解决?我更新了Xamarin和Android SDK文件,Xamarin正确指向我的android SDK位置(D:\dev\Xamarin\AndroidSDK).

在此输入图像描述

这是我的Android SDK管理器的屏幕截图:

在此输入图像描述

这是一个更大的输出片段:

1>D:\dev\Xamarin\AndroidSDK\platform-tools\adb.exe -s 169.254.138.177:5555 devices 
1>error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: Only one usage of each socket address (protocol/network address/port) is normally permitted. (10048)
1>List of devices attached
1>adb server version (32) doesn't match this client (36); killing...
1>could not read ok from ADB Server
1>* failed to start daemon *
1>error: cannot connect to daemon
1>
1>Selected device is not running.
1>Build FAILED.
Run Code Online (Sandbox Code Playgroud)

更新:安装Android SDK Build-tools 24.0.3(并删除23.0.2)没有帮助.


在此提供的这个回答这个问题没有帮助,因为我不知道是什么Appium或Genymotion是,我也不与PHP工作.我同意虽然它们都是由android调试器引起的,但我需要Xamarin修复.

Jim*_*ett 8

问题是您有另一台adb服务器同时运行.当您安装Android SDK时,它会安装Xamarin将使用的adb版本(在本例中为版本36),但其他一些工具也安装了adb.一些例子包括已经提到过的Gennymotion和Appium,在我的例子中它是Mobizen的一部分,我用它来将Android设备屏幕分享回我的Mac.你将安装一些运行adb(版本32)的东西,导致冲突.

您需要做的是找到有问题的adb安装并将其删除.我假设你在Windows上,所以最好启动任务管理器并查看找到adb的进程.一旦找到它,你应该能够根据它的路径从它的属性中看到它安装的应用程序,以便你可以卸载它或删除它.

adb.exe进程 显示完整路径的adb属性