Xamarin Forms Android 应用程序崩溃 运行 使用 VS Android 模拟器调试

Xamarin Forms Android App Crashes Running Debug with VS Android Emulator

我创建了一个基本的 Xamarin Forms 应用程序。它在 iOS 模拟器上运行良好。

然而,当我尝试 运行 使用 VS Android 模拟器(5.1 英寸棉花糖)时,每次打开时它都会崩溃。即使我在没有调试的情况下尝试 运行。以下是我一直看到的错误:

01-14 16:22:10.290 D/Mono    ( 1366): AOT module 'mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/App3.Droid-2/libaot-mscorlib.dll.so" not found
01-14 16:22:10.290 D/Mono    ( 1366): AOT module '/Users/builder/data/lanes/2512/d3008455/source/monodroid/builds/install/mono-x86/lib/mono/aot-cache/x86/mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/App3.Droid-2/libaot-mscorlib.dll.so" not found
01-14 16:22:10.294 D/Mono    ( 1366): Unloading image data-0x9659b010 [0xb93d5940].

我是 运行宁 VS2015 + Xamarin Forms 2.0 最新最好的。

这是怎么回事?

简而言之:

1. "Could not connect to the debugger" 问题(Android 应用程序启动并立即关闭,调试停止):

  1. 关闭Android模拟器window关闭虚拟机。
  2. 启动“Hyper-V Manager”(在 Windows 中管理虚拟机的 Microsoft 程序,您已安装它)
  3. Select 您尝试使用的模拟器
  4. 右键单击上下文菜单,点击 设置
  5. 在设置对话框中展开 处理器
  6. 单击兼容性
  7. 在右侧窗格中设置复选框“迁移到具有不同处理器版本的物理计算机
  8. 在Visual Studio开始调试重启模拟器

2。缺少 libaot-mscorlib.dll.so 问题:

转到 Android 项目的属性,点击选项卡“Android 选项”,然后取消选择“使用快速部署”。

来源: Fix for “could not connect to the debugger” while deploying Xamarin Forms apps to the Visual Studio Android Emulator (VS2015)

This issue only seems to be occurring on the newer generation of processors, which explains why I never saw it before.

发生这种情况是因为 Android 的 Android 模拟器的 Android 映像与 2015 年的新一代英特尔处理器不兼容。

此解决方案也发布在这里:Visual studio android emulator will not start fully

更新 2017 年 11 月 29 日

您真的应该考虑通过 Android Studio for Windows 迁移到 Google 提供的 Android 模拟器。较新的 Android API 级别(24 级及以上)仅在 Microsoft does not seem to care.

可用

Unfortunately, we have no plans to publish Android images past 4.4. We recommend that you try Google or GenyMotion’s emulator for future images of the Android operating system.