Xamarin IDE集成未能部署应用程序

问题描述:

当我尝试在xamarin-android应用程序上运行单元测试时,所有测试都失败,因为IDE(VS 2015)找不到任何设备或模拟器来部署应用程序,尽管一个正在运行。Xamarin IDE集成未能部署应用程序

如果我通常运行应用程序,它的工作原理。

VS日志输出:

Full log file: C:\Users\tester\AppData\Local\Temp\uitest\log-2016-08-03_10-57-46-734.txt 
Attempting IDE connection through pipe 0620e6c5f6094679bbb909f65a5f0702. 
Deploying app through IDE. 
Instructing the IDE to prepare the test app for execution. Session: Assembly=D:\Documents\Visual Studio 2015\Projects\MyTicketNativeApp\trunk\Cobeco.MyTicket.DroidApp.UITests\bin\Debug\Cobeco.MyTicket.DroidApp.UITests.DLL 
Platform=Android 
IDE integration failed to deploy app: There isn't any device or emulator available for running the application 
NUnit VS Adapter 2.0.0.0 executing tests is finished 
========== Run test finished: 11 run (0:00:02,6699974) ========== 

此外,完整日志文件的输出:

03-08-2016 10:57:46.749 +02:00 - 14 - Potential Android SDK location: (No path) - Not set. [ Source: ANDROID_HOME ] 
03-08-2016 10:57:46.750 +02:00 - 15 - Potential Android SDK location: D:\Android - Valid SDK. [ Source: Registry ] 
03-08-2016 10:57:46.750 +02:00 - 15 - Potential Android SDK location: D:\Android - Valid SDK. [ Source: Registry ] 
03-08-2016 10:57:46.750 +02:00 - 15 - Using Android SDK: D:\Android 
03-08-2016 10:57:46.750 +02:00 - 15 - Using JDK: C:\Program Files (x86)\Java\jdk1.7.0_55 [ Source: Registry ] 
03-08-2016 10:57:46.765 +02:00 - 30 - Attempting IDE connection for Android: D:\Documents\Visual Studio 2015\Projects\MyTicketNativeApp\trunk\Cobeco.MyTicket.DroidApp.UITests\bin\Debug\Cobeco.MyTicket.DroidApp.UITests.DLL. 
03-08-2016 10:57:46.765 +02:00 - 31 - Attempting IDE connection through pipe 0620e6c5f6094679bbb909f65a5f0702. 
03-08-2016 10:57:46.794 +02:00 - 59 - Deploying app through IDE. 
03-08-2016 10:57:46.794 +02:00 - 60 - Instructing the IDE to prepare the test app for execution. Session: Assembly=D:\Documents\Visual Studio 2015\Projects\MyTicketNativeApp\trunk\Cobeco.MyTicket.DroidApp.UITests\bin\Debug\Cobeco.MyTicket.DroidApp.UITests.DLL 
Platform=Android 
03-08-2016 10:57:46.807 +02:00 - 73 - IDE integration failed to deploy app: There isn't any device or emulator available for running the application 

我终于明白了。必须在单元测试设置中手动将ip设置为设备和apk文件的路径。

例如为:

AndroidApp app = ConfigureApp 
       .Android 
       .DeviceIp("127.0.0.1") //Localhost because i use an emulator 
       .ApkFile("<path-to-apk>") 
       .StartApp(); 

(对不起,无法评论还)您是否尝试过重新打开模拟器或连接的物理设备?你使用哪个模拟器?目标平台(armeabi,x86等)是否适用于您的仿真器设备?

+0

我试图重新打开仿真器并重新启动我的电脑多次。我没有尝试在物理设备上运行它,但项目必须在仿真器上运行。使用的模拟器是Xamarin Android Player和Google仿真器。 Hyper-V在我的机器上不起作用。目标平台已改编。 – meik99

+0

什么模拟器?哪些支持您的应用程序的体系结构? – Zhyano

+0

每个架构都被标记为支持。 我的主要模拟器是一个Nexus 5与来自Xamarin Android Player的棒棒糖 – meik99