Visual Studio Android 的模拟器不工作: mscorlib.dll.so 未找到

Visual Studio Emulator for Android is not working: mscorlib.dll.so not found

在我配置好 Hyper-V 并设法获得它之后 , the Visual Studio Emulator for Android 正在启动。我可以看到我的启动画面,但随后应用程序退出了。这是输出日志:

InspectorDebugSession(1): StateChange: Start -> EntryPointBreakpointRegistered
InspectorDebugSession(1): Constructed
Android application is debugging.
03-25 10:24:48.717 D/dalvikvm( 1251): Late-enabling CheckJNI
03-25 10:24:48.749 D/dalvikvm( 1251): Trying to load lib /data/app-lib/MyApp.Droid-1/libmonodroid.so 0xa8f89c78
03-25 10:24:48.749 D/dalvikvm( 1251): Added shared lib /data/app-lib/MyApp.Droid-1/libmonodroid.so 0xa8f89c78
03-25 10:24:48.761 W/monodroid( 1251): Using override path: /data/data/MyApp.Droid/files/.__override__
03-25 10:24:48.761 W/monodroid( 1251): Using override path: /storage/emulated/0/Android/data/MyApp.Droid/files/.__override__
03-25 10:24:48.761 W/monodroid( 1251): Trying to load sgen from: /data/data/MyApp.Droid/files/.__override__/libmonosgen-2.0.so
03-25 10:24:48.761 W/monodroid( 1251): Trying to load sgen from: /storage/emulated/0/Android/data/MyApp.Droid/files/.__override__/libmonosgen-2.0.so
03-25 10:24:48.761 W/monodroid( 1251): Trying to load sgen from: /data/app-lib/MyApp.Droid-1/libmonosgen-2.0.so
03-25 10:24:48.761 W/monodroid( 1251): Trying to load sgen from: /data/data/MyApp.Droid/files/.__override__/links/libmonosgen-2.0.so
03-25 10:24:48.761 W/monodroid-debug( 1251): Trying to initialize the debugger with options: --debugger-agent=transport=dt_socket,loglevel=0,address=127.0.0.1:8915,server=y,embedding=1
03-25 10:24:48.917 W/monodroid-debug( 1251): Accepted stdout connection: 43
03-25 10:24:49.693 D/Mono    ( 1251): Image addref mscorlib[0xb948bb30] -> mscorlib.dll[0xb948b0f0]: 1
03-25 10:24:49.697 D/Mono    ( 1251): AOT module 'mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/MyApp.Droid-1/libaot-mscorlib.dll.so" not found
03-25 10:24:49.697 D/Mono    ( 1251): AOT module '/Users/builder/data/lanes/2970/46c3f7e0/source/monodroid/builds/install/mono-x86/lib/mono/aot-cache/x86/mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/MyApp.Droid-1/libaot-mscorlib.dll.so" not found
03-25 10:24:49.705 D/Mono    ( 1251): Unloading image data-0x95e99010 [0xb948bb90].
Could not connect to the debugger.
InspectorDebugSession(1): HandleTargetEvent: TargetExited
InspectorDebugSession(1): Disposed

我尝试卸载模拟器中的数据(app、mono、xamarin),重新启动 Visual Studio/emulator,但没有任何帮助。为什么使用 Android 模拟器会这么痛苦?如果 none 的模拟器无法在 "production" 中使用,不知道 Android 应用程序是如何开发的。

我应该提到它可以在设备和其他模拟器上运行,例如 Xamarin Android Player,来自 Android SDK 的模拟器,...

试一试:

简而言之:

1. "Could not connect to the debugger" 问题:

  1. 启动 Hyper-V 管理器
  2. Select 您尝试使用的模拟器
  3. 右击,点击设置
  4. 点击处理器
  5. 点击兼容性
  6. 选中“迁移到具有不同处理器版本的物理计算机”复选框

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

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