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

ahe*_*ick 30 android xamarin xamarin-forms visual-studio-emulator

我有一个基本的Xamarin Forms应用程序.它适用于iOS模拟器.

但是,当我尝试使用VS Android模拟器(在Marshmallow中使用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].
Run Code Online (Sandbox Code Playgroud)

我正在运行VS2015 + Xamarin Forms 2.0最新和最好的.

这里发生了什么?

Zve*_*niy 92

简而言之:

1."无法连接到调试器"问题(Android应用程序启动并立即关闭,调试停止):

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

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

转到Android项目的属性,点击"Android选项"标签,然后取消选中"使用快速部署".

来源: 修复了"无法连接到调试器",同时将Xamarin Forms应用程序部署到Visual Studio Android模拟器(VS2015)

这个问题似乎只发生在新一代处理器上,这就解释了为什么我以前从未见过它.

这是因为Android的Visual Studio模拟器的Android映像与2015年的新一代英特尔处理器之间不兼容.

这个解决方案也在这里发布:Visual Studio android模拟器不会完全启动

更新2017年11月29日

您应该考虑通过适用于Windows的Android Studio迁移到Google提供的Android模拟器.较新的Android API级别(24及以上)仅在那里可用,而微软似乎并不关心.

很遗憾,我们没有计划在4.4之前发布Android图片.我们建议您尝试使用Google或GenyMotion的模拟器来获取Android操作系统的未来图像.