问题一:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.org.xxx.xxxxxx-NCkY1EumxXL7GxcLxHNlSw==/base.apk"],nativeLibraryDirectories=[/data/app/com.org.taisau.facepass-NCkY1EumxXL7GxcLxHNlSw==/lib/arm, /data/app/com.org.xxx.xxxxxx-NCkY1EumxXL7GxcLxHNlSw==/base.apk!/lib/armeabi-v7a, /system/lib]]] couldn't find "libMNN.so"
at java.lang.Runtime.loadLibrary0(Runtime.java:1012)
at java.lang.System.loadLibrary(System.java:1669)
找这个路径下 /lib/armeabi-v7a 有没有 libMNN.so 包
问题二:
java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZN3MNN28MNNInsertExtraBackendCreatorE14MNNForwardTypePKNS_14BackendCreatorEb" referenced by "/data/app/com.org.xxx.xxxxxx-DQRLjZEMZ9B0avTi8kbx8Q==/lib/arm/libMNN_CL.so"...
at java.lang.Runtime.loadLibrary0(Runtime.java:1016)
at java.lang.System.loadLibrary(System.java:1669)
这个一般是你引用了第三方库, 引起的.so冲突
解决:
- 首先你要确定是哪个库导致的冲突闪退 (这里虽然显示libMNN_CL.so),但是MNN.so库编译链接到CL库中的, 然而你引入的第三方库中找不到那个符号
- 一般第三库文件是只读的,你改不了, 那只有修改自己的库了
修改库名, 然后找到load的地方, 对应修改
网友评论