Android:UnsatisfiedLinkError: dalvik.system.[DexPathListXXXlib/arm64, /system/lib64]couldn't find so

本文探讨了在Android开发中遇到的UnsatisfiedLinkError,具体表现为无法找到libpocketsphinx_jni.so库。文章详细解释了这一错误的原因,并提供了在build.gradle文件中配置ndk abiFilters的解决方案。
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.toshiba.pocketsphinx-VPrA29DXIucRRuO4GNnO9Q==/base.apk"],nativeLibraryDirectories=[/data/app/com.toshiba.pocketsphinx-VPrA29DXIucRRuO4GNnO9Q==/lib/arm64, /system/lib64]]] couldn't find "libpocketsphinx_jni.so"

日志如上,意思是libpocketsphinx_jni.so这个so库没能找到,如果确定so库的确在项目中存在,那么注意在build.gradle的defaultConfig中,是否添加了ndk的Filter,早期代码可以不加,但是现在这个如果不加就会找不到so库,装载so库的文件夹名字用逗号分隔:

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

 

我在QtActivity上面load不进去啊 E/AndroidRuntime( 7301): FATAL EXCEPTION: main E/AndroidRuntime( 7301): Process: com.Flyshark.RadioMasterAX, PID: 7301 E/AndroidRuntime( 7301): java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.Flyshark.RadioMasterAX-7Hl23EKDH9oTOcFIB-CoCw==/base.apk"],nativeLibraryDirectories=[/data/app/com.Flyshark.RadioMasterAX-7Hl23EKDH9oTOcFIB-CoCw==/lib/arm64, /data/app/com.Flyshark.RadioMasterAX-7Hl23EKDH9oTOcFIB-CoCw==/base.apk!/lib/arm64-v8a, /system/lib64]]] couldn't find "libTestEnjoyScreen.so" E/AndroidRuntime( 7301): at java.lang.Runtime.loadLibrary0(Runtime.java:1012) E/AndroidRuntime( 7301): at java.lang.System.loadLibrary(System.java:1669) E/AndroidRuntime( 7301): at com.Flyshark.AndroidStart.<clinit>(AndroidStart.java:72) E/AndroidRuntime( 7301): at java.lang.Class.newInstance(Native Method) E/AndroidRuntime( 7301): at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:69) E/AndroidRuntime( 7301): at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:45) E/AndroidRuntime( 7301): at android.app.Instrumentation.newActivity(Instrumentation.java:1215) E/AndroidRuntime( 7301): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2862) E/AndroidRuntime( 7301): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3079) E/AndroidRuntime( 7301): at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) E/AndroidRuntime( 7301): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) E/AndroidRuntime( 7301): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) E/AndroidRuntime( 7301): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1836) E/AndroidRuntime( 7301): at android.os.Handler.dispatchMessage(Handler.java:106) E/AndroidRuntime( 7301): at android.os.Looper.loop(Looper.java:193) E/AndroidRuntime( 7301): at android.app.ActivityThread.main(ActivityThread.java:6702) E/AndroidRuntime( 7301): at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime( 7301): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) E/AndroidRuntime( 7301): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)
最新发布
12-19
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值