解决2种jni加载错误

有一种错误是:JNI_ERR returned from JNI_OnLoad in "/data/app/com.example.administrator.video-J7TCgp7S53DS3lBS-cvn9-XXXX

这种错误代表的是你导入人家demo的时候,没有按照人家demo的路径(包名)写,所以可能项目当中有写死的路径(包名)

第二种

   Process: com.example.administrator.video, PID: 20204
                                                                                 java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/base.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_dependencies_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_0_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_1_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_2_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_3_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_4_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_5_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_6_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_7_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_8_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/lib/arm64, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/base.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_dependencies_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_0_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_1_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_2_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_3_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_4_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_5_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_6_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_7_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_8_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_9_apk.apk!/lib/arm64-v8a, /system/lib64]]] couldn't find "libijkffmpeg.so"
                                                                                     at java.lang.Runtime.loadLibrary0(Runtime.java:1012)
                                                                                     at java.lang.System.loadLibrary(System.java:1669)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer$1.loadLibrary(IjkMediaPlayer.java:157)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.loadLibrariesOnce(IjkMediaPlayer.java:168)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.initPlayer(IjkMediaPlayer.java:209)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.(IjkMediaPlayer.java:205)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.(IjkMediaPlayer.java:0)
                                                                                     at com.example.administrator.video.view.video.IjkVideoView.openVideo(IjkVideoView.java:294)
                                                                                     at com.example.administrator.video.view.video.IjkVideoView.access$2200(IjkVideoView.java:51)
                                                                                     at com.example.administrator.video.view.video.IjkVideoView$7.onSurfaceCreated(IjkVideoView.java:646)
                                                                                     at com.example.administrator.video.view.video.SurfaceRenderView$SurfaceCallback.surfaceCreated(SurfaceRenderView.java:234)
                                                                                     at android.view.SurfaceView.updateSurface(SurfaceView.java:670)
                                                                                     at android.view.SurfaceView$2.onPreDraw(SurfaceView.java:143)
03-14 14:31:13.753 20204-20204/com.example.administrator.video E/AndroidRuntime:     at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:977)
                                                                                     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2671)
                                                                                     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1633)
                                                                                     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7786)
                                                                                     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1004)
                                                                                     at android.view.Choreographer.doCallbacks(Choreographer.java:816)
                                                                                     at android.view.Choreographer.doFrame(Choreographer.java:751)
                                                                                     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:990)
                                                                                     at android.os.Handler.handleCallback(Handler.java:873)
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                     at android.os.Looper.loop(Looper.java:193)
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:6863)
                                                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                                                     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
03-14 14:31:13.753 20204-20204/com.example.administrator.video E/AndroidRuntime: FATAL EXCEPTION: main
                                                                                 Process: com.example.administrator.video, PID: 20204
                                                                                 java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/base.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_dependencies_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_0_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_1_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_2_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_3_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_4_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_5_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_6_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_7_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_8_apk.apk", zip file "/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/lib/arm64, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/base.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_dependencies_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_0_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_1_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_2_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_3_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_4_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_5_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_6_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_7_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_8_apk.apk!/lib/arm64-v8a, /data/app/com.example.administrator.video-e0RR7mWcPs5fc730VKcC0Q==/split_lib_slice_9_apk.apk!/lib/arm64-v8a, /system/lib64]]] couldn't find "libijkffmpeg.so"
                                                                                     at java.lang.Runtime.loadLibrary0(Runtime.java:1012)
                                                                                     at java.lang.System.loadLibrary(System.java:1669)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer$1.loadLibrary(IjkMediaPlayer.java:157)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.loadLibrariesOnce(IjkMediaPlayer.java:168)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.initPlayer(IjkMediaPlayer.java:209)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.(IjkMediaPlayer.java:205)
                                                                                     at tv.danmaku.ijk.media.player.IjkMediaPlayer.(IjkMediaPlayer.java:0)
                                                                                     at com.example.administrator.video.view.video.IjkVideoView.openVideo(IjkVideoView.java:294)
                                                                                     at com.example.administrator.video.view.video.IjkVideoView.access$2200(IjkVideoView.java:51)
                                                                                     at com.example.administrator.video.view.video.IjkVideoView$7.onSurfaceCreated(IjkVideoView.java:646)
                                                                                     at com.example.administrator.video.view.video.SurfaceRenderView$SurfaceCallback.surfaceCreated(SurfaceRenderView.java:234)
                                                                                     at android.view.SurfaceView.updateSurface(SurfaceView.java:670)
                                                                                     at android.view.SurfaceView$2.onPreDraw(SurfaceView.java:143)
03-14 14:31:13.754 20204-20204/com.example.administrator.video E/AndroidRuntime:     at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:977)
                                                                                     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2671)
                                                                                     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1633)
                                                                                     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7786)
                                                                                     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1004)
                                                                                     at android.view.Choreographer.doCallbacks(Choreographer.java:816)
                                                                                     at android.view.Choreographer.doFrame(Choreographer.java:751)
                                                                                     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:990)
                                                                                     at android.os.Handler.handleCallback(Handler.java:873)
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                     at android.os.Looper.loop(Looper.java:193)
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:6863)
                                                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                                                     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

这种错误。第一,你先解压你的APK看看有没有这两种so库,

我项目当中的so库,本来我还想找谷歌工作人员问一问,可能人家员工都挺忙的,只能自己解决了,呵呵

解决2种jni加载错误_第1张图片
image.png

我一解压,我去,都在啊!!!!!这不是坑人吗

解决2种jni加载错误_第2张图片
image.png

然而我打开文件夹

解决2种jni加载错误_第3张图片
image.png

我就RLG了,啥都没有

我的3个so库一个都没有,这能找到个毛啊,我一想可能是打包出了问题,我看了一下配置文件
最后加了:

  sourceSets {
        main {
            jni.srcDirs = []
            jniLibs.srcDirs = ['src/main/jniLibs']
        }
    }

解决了
默认的为:

   sourceSets {
         main {
             jniLibs.srcDirs = ['libs']
         }
     }

还有一种导致冲突

v7a和v8a会有冲突,删掉v8
如下:

 ndk {
            //选择要添加的对应cpu类型的.so库。
            abiFilters "armeabi","armeabi-v7a","x86"//,"armeabi-v8a"删掉v8a
          
        }

你可能感兴趣的:(解决2种jni加载错误)