android 7.0 加载system.loadLibrary崩溃事件解决–.so文件缺失

  • Post author:
  • Post category:其他





现在基本都在用第三方的控件,但是不知道为什么,其他手机都好好的,但是软件在


Android


N上会崩溃,其实也就是在android7.0上会崩溃,其他手机都好的。网上查的话全都是什么android7.0更新什么什么的,没什么实质性的作用,给的一些典型解决案例也看不懂,不过最后在外国网站上找到了解决办法,其实很简单。下面我就以我自己这个例子来说怎么解决吧,想来其他的错误也差不多。







andorid studio报错日志,如下:




07-19 03:36:46.905 27384-27384/? E/AndroidRuntime: FATAL EXCEPTION: main
                                   Process: com.yuqi.cj, PID: 27384
                                   java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.seven.cj-1/base.apk"],nativeLibraryDirectories=[/data/app/com.yuqi.cj-1/lib/x86, /data/app/com.seven.cj-1/base.apk!/lib/x86, /system/lib, /vendor/lib]]] couldn't find "libgnustl_shared.so"
                                       at java.lang.Runtime.loadLibrary0(Runtime.java:984)
                                       at java.lang.System.loadLibrary(System.java:1530)
                                       at com.seven.cj.Application.onCreate(Application.java:49)
                                       at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1024)
                                       at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5403)
                                       at android.app.ActivityThread.-wrap2(ActivityThread.java)
                                       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1545)
                                       at android.os.Handler.dispatchMessage(Handler.java:102)
                                       at android.os.Looper.loop(Looper.java:154)
                                       at android.app.ActivityThread.main(ActivityThread.java:6119)
                                       at java.lang.reflect.Method.invoke(Native Method)
                                       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)




然后我打开报错的代码,如下:

       System.loadLibrary("gnustl_shared");
//        System.loadLibrary("ijkffmpeg");//目前使用微博的ijkffmpeg会出现1K再换wifi不重连的情况
        System.loadLibrary("qupai-media-thirdparty");
//        System.loadLibrary("alivc-media-jni");
        System.loadLibrary("qupai-media-jni");


直接加载 system.loadLibrary就给我闪退了


然后查找了下相关的资料。


但是可能会有些其他的错误,然后突然想到android7.0的机子好多都是64位的。好像之前遇到过。


然后回到项目中看下







确实是os文件缺失。都是粗心惹得祸。哈哈



解决方法如下,希望能够帮助到遇到问题的你或者即将遇到问题的你:



SO文件缺失解决方法




参考的链接:




http://blog.csdn.net/version1_0/article/details/72820575






http://blog.csdn.net/cwhy7/article/details/52389224





http://blog.csdn.net/seven2729/article/details/48289101










版权声明:本文为seven2729原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。