解决java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList couldn‘t find xx so

编程入门 行业动态 更新时间:2024-10-10 16:18:47

解决java.lang.<a href=https://www.elefans.com/category/jswz/34/1714731.html style=UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList couldn‘t find xx so"/>

解决java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList couldn‘t find xx so

armeabi就是针对普通的或旧的arm v5 cpu,armeabi-v7a是针对有浮点运算或高级扩展功能的arm v7 cpu。

armeabi-v7a(32位ARM设备),arm64-v8a(64位ARM设备)

Android 设备的CPU类型(通常称为”ABIs”)

armeabiv-v7a: 第7代及以上的 ARM 处理器。2011年15月以后的生产的大部分Android设备都使用它.
arm64-v8a: 第8代、64位ARM处理器,很少设备,三星 Galaxy S6是其中之一。
armeabi: 第5代、第6代的ARM处理器,早期的手机用的比较多。
x86: 平板、模拟器用得比较多。
x86_64: 64位的平板。                  

问题描述:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file “/data/app/xxx.xxxxx.xxx/base.apk”],nativeLibraryDirectories=[/data/app/xxx.xxxxx.xxx/lib/arm64, /vendor/lib64, /system/lib64]]] couldn’t find “xxxxxxxx.so”;

解决方案:
1.首先先跟sdk提供商沟通看看他们是否能够提供64位的so库
2.如果实在不行的话,只能在项目的gradle文件下 的defaultConfig{}里添加如下代码:

  ndk{abiFilters "armeabi ","armeabi-v7a"}

这样项目就只会去armeabi 或者armeabi-v7a下去寻找对应的so库。

更多推荐

解决java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList coul

本文发布于:2024-02-26 20:45:22,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1703849.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:UnsatisfiedLinkError   dalvik   java   lang   system

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!