我在2017年的Visual Studio社区中使用Android模拟器时遇到问题,我决定创建一个空白项目以查看它是否会运行。尝试在Live Xamarin播放器中运行时收到此错误消息:
Starting Android Emulator Android_Accelerated_x86_Nougat...
Failed to boot Android device emulator-5554...
Unable to deploy to Android_Accelerated_x86_Nougat, please ensure the Xamarin
Live Player app is open and the device is on the same network as Visual Studio.
当我甚至没有编写一行代码时,为什么在新的空白项目中运行模拟器时遇到问题?谢谢你的帮助。
更新:所以我安装了最新的Android SDK 8.0及其系统映像,并尝试创建使用它的虚拟设备。但是,Android虚拟设备管理器会显示“未安装系统映像”和“#39;我选择8.0框架时的消息。因此,我安装了早期版本的SDK以及系统映像(5),并能够使用它创建虚拟设备。另一个问题是为什么系统图像不会出现在8.0框架中?
答案 0 :(得分:1)
Xamarin.Forms.Platform.Android.dll的$(TargetFrameworkVersion) (vv8.0)大于项目的$(TargetFrameworkVersion) (V7.1)。你需要为你增加$(TargetFrameworkVersion) 项目
这意味着Xamarin.Forms库的目标是Android 8.0(API级别26),但您的项目是针对Android 7.1(API级别25)设置的。您无法在不降级的情况下更改Xamarin.Forms目标版本,但您可以轻松更改项目目标版本。您可以从Xamarin了解有关这些概念的更多信息。请注意,Xamarin博客文章的一些细节已经过时了!
Xamarin还有一个不错的blog post可以引导您完成为Android 8.0 API级别26设置系统的过程。通常情况下并不复杂,但Google在内部更改了他们的SDK工具,介于25到26之间以非常重要的方式。他们从GUI工具更改为命令行工具。
如果您没有要测试的物理设备,您可能还希望获得(预览中)Xamarin Android Device Manager。此Xamarin Android设备管理器工具是在不使用Google命令行工具的情况下创建和配置API 26及更高版本模拟器的唯一方法。
答案 1 :(得分:0)
Google似乎已经摆脱了管理最新版SDK和虚拟设备的GUI应用程序,因此当您尝试使用8.0创建新的虚拟设备时,它与GUI工具不兼容。在Xamarin发布GUI工具来替换它们之前,我们可以使用命令行来管理SDK和虚拟设备。
https://docs.microsoft.com/en-us/xamarin/android/troubleshooting/sdk-cli-tooling-changes
https://developer.android.com/studio/command-line/avdmanager.html