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

时间:2016-01-14 21:33:55

标签: 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].

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

这里发生了什么?

1 个答案:

答案 0 :(得分:92)

简而言之:

<强> 1。 &#34;无法连接到调试器&#34;问题(Android应用程序启动并立即关闭,调试停止):

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

      

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

    这是因为截至2015年Android版Visual Studio模拟器和新一代英特尔处理器的Android图像不兼容。

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

    2017年11月29日更新

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

      

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