我已经解决了这个问题几天了,还没有找到解决方案。
我一直在为我的模拟器使用Android 7.0 ARM (armeabi-v7a)
图片。由于速度非常慢,我一直在尝试Android 7.0 Intel Atom (x86_64)
使用HAXM
,但在打开应用时出现以下错误。
AndroidRuntime:java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader [DexPathList [[zip file" / data / app / SiteToolsMobile。 机器人-1 / base.apk&#34],nativeLibraryDirectories = [/数据/应用/ SiteToolsMobile.Droid-1 /升 ib / x86_64,/ data / app / SiteToolsMobile.Droid-1 / base.apk!/ lib / x86_64,/ vendor / lib64 ,/ system / lib64]]]无法找到" libmonodroid.so"
可以在这里看到完整的logcat -
---------系统的开头 10-26 10:30:39.317 1534 1545 I ActivityManager:START u0 {act = android.intent.a ction.MAIN cat = [android.intent.category.LAUNCHER] flg = 0x10200000 cmp = SiteToolsMo bile.Droid / md5988fcde8450a201101ada904f480bb79.SplashActivity(有额外内容)}来自 uid 10007显示0 ---------主要的开始 10-26 10:30:39.360 2778 2778我是艺术:不迟到-Xcheck:jni(已读) 你好) 10-26 10:30:39.368 1534 1715 I ActivityManager:启动proc 2778:SiteToolsMobil e.Droid / u0a56用于活动SiteToolsMobile.Droid / md5988fcde8450a201101ada904f480 bb79.SplashActivity 10-26 10:30:39.395 2778 2778 D AndroidRuntime:关闭VM ---------崩溃的开始 10-26 10:30:39.395 2778 2778 E AndroidRuntime:致命异常:主要 10-26 10:30:39.395 2778 2778 E AndroidRuntime:进程:SiteToolsMobile.Droid, PID:2778 10-26 10:30:39.395 2778 2778 E AndroidRuntime:java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader [DexPathList [[zip file" / data / app / SiteToolsMobile。 机器人-1 / base.apk&#34],nativeLibraryDirectories = [/数据/应用/ SiteToolsMobile.Droid-1 /升 ib / x86_64,/ data / app / SiteToolsMobile.Droid-1 / base.apk!/ lib / x86_64,/ vendor / lib64 ,/ system / lib64]]]无法找到" libmonodroid.so" 10-26 10:30:39.395 2778 2778 E AndroidRuntime:at java.lang.Runtime.loa dLibrary(Runtime.java:367) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:at java.lang.System.load 库(System.java:1076) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:at mono.MonoPackageManag er.LoadApplication(MonoPackageManager.java:34) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:at mono.MonoRuntimeProvi der.attachInfo(MonoRuntimeProvider.java:42) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.app.ActivityT hread.installProvider(ActivityThread.java:5153) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.app.ActivityT hread.installContentProviders(ActivityThread.java:4748) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.app.ActivityT hread.handleBindApplication(ActivityThread.java:4688) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.app.ActivityT hread.-wrap1(ActivityThread.java) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.app.ActivityT hread $ H.handleMessage(ActivityThread.java:1405) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.os.Handler.di spatchMessage(Handler.java:102) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.os.Looper.loo P(Looper.java:148) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:在android.app.ActivityT hread.main(ActivityThread.java:5417) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:at java.lang.reflect.Met hod.invoke(原生方法) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:at com.android.internal。 os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726) 10-26 10:30:39.395 2778 2778 E AndroidRuntime:at com.android.internal。 os.ZygoteInit.main(ZygoteInit.java:616) 10-26 10:30:39.396 1534 2013 W ActivityManager:强制完成活动坐下 eToolsMobile.Droid / md5988fcde8450a201101ada904f480bb79.SplashActivity 10-26 10:30:39.699 1534 2013 I WindowManager:屏幕截图最多重试4个Toke n {e7ebe9 ActivityRecord {6e79c70 u0 SiteToolsMobile.Droid / md5988fcde8450a201101ad a904f480bb79.SplashActivity t6 f}} appWin = Window {a134507 u0 Starting SiteToolsMo bile.Droid} drawState = 1 10-26 10:30:39.736 1534 2729 I OpenGLRenderer:初始化的EGL,版本1.4 10-26 10:30:40.201 1534 1548 W ActivityManager:Act的活动暂停超时 ivityRecord {6e79c70 u0 SiteToolsMobile.Droid / md5988fcde8450a201101ada904f480bb79 .SplashActivity t6 f} 10-26 10:30:43.005 2778 2778 I处理:发送信号。 PID:2778 SIG:9 10-26 10:30:43.016 1534 2729 E Surface:getSlotFromBufferLocked:unknown buff 呃:0x7fb4b733ab20 10-26 10:30:43.027 1534 2013 W InputMethodManagerService:窗口已经聚焦 ed,忽略焦点增益:com.android.internal.view.IInputMethodClient $ Stub $ Pr oxy @ 67e1464 attribute = null,token = android.os.BinderProxy@f656261 10-26 10:30:43.053 1534 1716 I ActivityManager:处理SiteToolsMobile.Droid (pid 2778)已经死了 10-26 10:30:43.207 1534 1553 W AppOps:完成op nesting under-run:uid 1 000 pkg android代码24次= 0持续时间= 0嵌套= 0
所以我知道它无法找到这个lib,但我不知道为什么它找不到这个lib而且我不知道如何修复它。
我尝试卸载应用,清理解决方案和重建。
我已经尝试了6.0
以及7.1.1
系统映像。
我还没有尝试重新安装xamarin或其他任何东西,因为那将在我可以使用的网络上剩余的一天。
为什么不存在libmonodroid.so
以及如何解决?
修改
x86_64已启用。这是我的设备和高级Android选项的截图。
AVD设置 -
构建选项 -
答案 0 :(得分:2)
答案 1 :(得分:2)
我找到了解决方案!
除x86_64外,禁用ABI。
我还不知道哪个ABI导致了冲突。我想也许是X86。因为他总是部署一个MonoRuntime ......
答案 2 :(得分:1)
删除x86
和x86_x64
以外的所有内容将禁用物理设备上的调试。
正确的解决方案是删除arm64-v8a
,它会正常工作。
答案 3 :(得分:0)
最近安装了Xamarin并遇到了同样的问题,发现Android设备日志中的错误(Visual Studio:工具/ Android /设备日志...),这个解决方案确实解决了这个问题。我更进了一步,缩小了问题(至少在我的情况下),需要删除支持的架构:armeabi。其他支持的架构都没有引起这个问题。我正在运行Xamarin for Visual Studio 4.2.2.11,在Android模拟器下安装Android 7.1.1,使用Google API Intel Atom(x86_64)和Google的Nexus 5设备。
答案 4 :(得分:0)
在Visual Studio for Mac(8.7.1)上,最近出现了此问题,并且Xamarin有一个安装包.GitHub问题中已经提供了Android SDK。
答案 5 :(得分:0)
如here所述,它再次开始发生,并且在Visual Studio的最新更新中已修复。因此,只需检查更新,然后安装它们即可。