简体   繁体   English

无法使用Xamarin和Visual Studio Community 2015启动Android虚拟设备

[英]Can't start Android Virtual Device with Xamarin and Visual Studio Community 2015

I just installed Xamarin for VS2015, and have created a blank Android app. 我刚刚为VS2015安装了Xamarin,并创建了一个空白的Android应用。 Unfortunately, neither of the Android Virtual Devices provided by Xamarin will run the little template app I was provided. 不幸的是,Xamarin提供的Android虚拟设备都不会运行我提供的小模板应用程序。 Visual Studio gives an unhelpful message of "There were deployment errors". Visual Studio给出了无用的消息“存在部署错误”。 Looking into the logs reveals this: 查看日志可以发现:

System.InvalidOperationException
   at Xamarin.VisualStudio.Android.AndroidVirtualDeviceProvider.StartEmulator(IAndroidVirtualDevice virtualDevice, IProgressReport progress, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\Devices\AndroidVirtualDeviceProvider.cs:line 148
   at Xamarin.VisualStudio.Android.CommandHandlers.StartupVirtualDeviceCommandHandler.StartUp(IMonoAndroidDevice device, IProgressReport progress, IAndroidVirtualDeviceProvider virtualDeviceProvider, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\CommandHandlers\StartupVirtualDeviceCommandHandler.cs:line 72
   at Xamarin.VisualStudio.Android.CommandHandlers.StartupVirtualDeviceCommandHandler.Execute(StartupVirtualDeviceCommand command, IProgressReport progress, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\CommandHandlers\StartupVirtualDeviceCommandHandler.cs:line 45
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.Execute(TCommand command, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 152
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.<>c__DisplayClass1_0.<ExecuteAsync>b__0() in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 118
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
Xamarin.VisualStudio.ProgressReport Error: 0 : [2016-07-09 15:31:19.0670] System.InvalidOperationException
   at Xamarin.VisualStudio.Commands.CommandHandlerBase.ProcessAggregateInnerException(Exception innerException, IProgressReport progress) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 38
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.Execute(TCommand command, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 145
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.<>c__DisplayClass1_0.<ExecuteAsync>b__0() in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 118
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
Xamarin.VisualStudio.ProgressReport Error: 0 : [2016-07-09 15:32:08.4234] System.InvalidOperationException
   at Xamarin.VisualStudio.Android.AndroidVirtualDeviceProvider.StartEmulator(IAndroidVirtualDevice virtualDevice, IProgressReport progress, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\Devices\AndroidVirtualDeviceProvider.cs:line 148
   at Xamarin.VisualStudio.Android.CommandHandlers.StartupVirtualDeviceCommandHandler.StartUp(IMonoAndroidDevice device, IProgressReport progress, IAndroidVirtualDeviceProvider virtualDeviceProvider, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\CommandHandlers\StartupVirtualDeviceCommandHandler.cs:line 72
   at Xamarin.VisualStudio.Android.CommandHandlers.StartupVirtualDeviceCommandHandler.Execute(StartupVirtualDeviceCommand command, IProgressReport progress, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\CommandHandlers\StartupVirtualDeviceCommandHandler.cs:line 45
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.Execute(TCommand command, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 132
Xamarin.VisualStudio.ProgressReport Error: 0 : [2016-07-09 15:32:08.4404] System.InvalidOperationException
   at Xamarin.VisualStudio.Commands.CommandHandlerBase.ProcessAggregateInnerException(Exception innerException, IProgressReport progress) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 38
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.Execute(TCommand command, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 145
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.<>c__DisplayClass1_0.<ExecuteAsync>b__0() in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 118
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
Xamarin.VisualStudio.Android.AndroidDeviceSettings Information: 0 : [2016-07-09 15:32:38.9678] Settings successfully saved.
Xamarin.VisualStudio.Android.AndroidDeviceSettings Information: 0 : [2016-07-09 15:36:56.2277] Settings successfully saved.
Xamarin.VisualStudio.ProgressReport Error: 0 : [2016-07-09 15:37:04.7492] System.InvalidOperationException
   at Xamarin.VisualStudio.Android.AndroidVirtualDeviceProvider.StartEmulator(IAndroidVirtualDevice virtualDevice, IProgressReport progress, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\Devices\AndroidVirtualDeviceProvider.cs:line 148
   at Xamarin.VisualStudio.Android.CommandHandlers.StartupVirtualDeviceCommandHandler.StartUp(IMonoAndroidDevice device, IProgressReport progress, IAndroidVirtualDeviceProvider virtualDeviceProvider, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\CommandHandlers\StartupVirtualDeviceCommandHandler.cs:line 72
   at Xamarin.VisualStudio.Android.CommandHandlers.StartupVirtualDeviceCommandHandler.Execute(StartupVirtualDeviceCommand command, IProgressReport progress, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio.Android\CommandHandlers\StartupVirtualDeviceCommandHandler.cs:line 45
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.Execute(TCommand command, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 152
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.<>c__DisplayClass1_0.<ExecuteAsync>b__0() in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 118
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
Xamarin.VisualStudio.ProgressReport Error: 0 : [2016-07-09 15:37:04.7662] System.InvalidOperationException
   at Xamarin.VisualStudio.Commands.CommandHandlerBase.ProcessAggregateInnerException(Exception innerException, IProgressReport progress) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 38
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.Execute(TCommand command, CancellationToken cancellationToken) in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 145
   at Xamarin.VisualStudio.Commands.CommandHandlerBase`2.<>c__DisplayClass1_0.<ExecuteAsync>b__0() in C:\Users\builder\data\lanes\3420\ee3cfcdd\source\xamarinvs\src\Core\VisualStudio\Commands\CommandHandlerBase.cs:line 118
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
Xamarin.VisualStudio.Android.AndroidDeviceSettings Information: 0 : [2016-07-09 15:41:33.7269] Settings successfully saved.

Googling the error brings up this other question , which was solved by enabling hardware virtualization, but I'm not quite sure what that means. 谷歌搜索错误提出了另一个问题 ,通过启用硬件虚拟化解决了这个问题 ,但是我不确定这意味着什么。 I've tried to troubleshoot myself, but I have no idea what's even going on. 我试图对自己进行故障排除,但是我什至不知道发生了什么。 Making matters worse, there seem to be two separate copies of the Android SDK on my computer, one in %USER_HOME%/AppData/Local/Android/android-sdk and one in %USER_HOME%/AppData/Local/Xamarin/MonoForAndroid/AndroidSDK . 更糟糕的是,我的计算机上似乎有两个单独的Android SDK副本,一个在%USER_HOME%/AppData/Local/Android/android-sdk ,一个在%USER_HOME%/AppData/Local/Xamarin/MonoForAndroid/AndroidSDK The one in Android has the SDK Manager and AVD Manager in it, but Xamarin's doesn't. Android中的一个具有SDK Manager和AVD Manager,但Xamarin却没有。 As far as I can tell, nothing seems to use the one in Android , but it was installed by Xamarin. 据我所知,似乎没有什么可在Android ,但它是由Xamarin安装的。

Try using the Genymotion emulator...it will clarify if the problem is with the Virtualisation or the emulator itself. 尝试使用Genymotion模拟器...它将澄清问题出在虚拟化还是模拟器本身。 visit https://www.genymotion.com/ 请访问https://www.genymotion.com/

Ok, so this is embarrassing. 好的,这很尴尬。 I was using the AVD manager in %USER_HOME%/AppData/Local/Android/android-sdk . 我在%USER_HOME%/AppData/Local/Android/android-sdk中使用了AVD管理器。 When I open the one in Xamarin in Visual Studio, it works perfectly on the first time. 当我在Visual Studio中的Xamarin中打开一个文件时,它第一次就可以完美运行。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM