首页 > 解决方案 > UnsatisfiedLinkError:缺少 libmodpdfium.so

问题描述

我在 Crashlytics 中有以下错误

Caused by java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.agendaboa.app-1/base.apk", zip file "/data/app/com.agendaboa.app-1/split_config.armeabi_v7a.apk", zip file "/data/app/com.agendaboa.app-1/split_config.pt.apk", zip file "/data/app/com.agendaboa.app-1/split_config.xhdpi.apk"],nativeLibraryDirectories=[/data/app/com.agendaboa.app-1/lib/arm, /data/app/com.agendaboa.app-1/base.apk!/lib/armeabi-v7a, /data/app/com.agendaboa.app-1/split_config.armeabi_v7a.apk!/lib/armeabi-v7a, /data/app/com.agendaboa.app-1/split_config.pt.apk!/lib/armeabi-v7a, /data/app/com.agendaboa.app-1/split_config.xhdpi.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]]] couldn't find "libmodpdfium.so"
       at java.lang.Runtime.loadLibrary0 + 972(Runtime.java:972)
       at java.lang.System.loadLibrary + 1530(System.java:1530)
       at com.shockwave.pdfium.PdfiumCore.<clinit> + 19(PdfiumCore.java:19)
       at com.github.barteksc.pdfviewer.PDFView.<init> + 311(PDFView.java:311)
       at java.lang.reflect.Constructor.newInstance0(Constructor.java)
       at java.lang.reflect.Constructor.newInstance + 430(Constructor.java:430)
       at android.view.LayoutInflater.createView + 645(LayoutInflater.java:645)
       at android.view.LayoutInflater.createViewFromTag + 787(LayoutInflater.java:787)
       at android.view.LayoutInflater.createViewFromTag + 727(LayoutInflater.java:727)
       at android.view.LayoutInflater.rInflate + 858(LayoutInflater.java:858)
       at android.view.LayoutInflater.rInflateChildren + 821(LayoutInflater.java:821)
       at android.view.LayoutInflater.inflate + 518(LayoutInflater.java:518)
       at android.view.LayoutInflater.inflate + 426(LayoutInflater.java:426)
       at android.view.LayoutInflater.inflate + 377(LayoutInflater.java:377)
       at android.support.v7.app.AppCompatDelegateImpl.setContentView + 469(AppCompatDelegateImpl.java:469)
       at android.support.v7.app.AppCompatActivity.setContentView + 140(AppCompatActivity.java:140)
       at android.databinding.DataBindingUtil.setContentView + 303(DataBindingUtil.java:303)
       at android.databinding.DataBindingUtil.setContentView + 284(DataBindingUtil.java:284)
       at com.agendaboa.app.ui.activity.view.ViewReceipt.onCreate + 38(ViewReceipt.java:38)
       at android.app.Activity.performCreate + 6757(Activity.java:6757)
       at android.app.Instrumentation.callActivityOnCreate + 1119(Instrumentation.java:1119)
       at android.app.ActivityThread.performLaunchActivity + 2703(ActivityThread.java:2703)
       at android.app.ActivityThread.handleLaunchActivity + 2811(ActivityThread.java:2811)
       at android.app.ActivityThread.-wrap12(ActivityThread.java)
       at android.app.ActivityThread$H.handleMessage + 1528(ActivityThread.java:1528)
       at android.os.Handler.dispatchMessage + 102(Handler.java:102)
       at android.os.Looper.loop + 154(Looper.java:154)
       at android.app.ActivityThread.main + 6316(ActivityThread.java:6316)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run + 872(ZygoteInit.java:872)
       at com.android.internal.os.ZygoteInit.main + 762(ZygoteInit.java:762)

从上面的错误中,很明显没有找到库“libmodpdfium.so”,但是当我分析 APK 时,库就在那里。请找到下面的截图 带有分析 APK 的库屏幕截图

如何解决上述错误?
找到这篇文章https://medium.com/mobiwise-blog/unsatisfiedlinkerror-problem-on-some-android-devices-b77f2f83837d

但是不知道是否可以解决问题,从上面的屏幕截图中可以看出,该应用程序的所有文件夹中都有so文件。

我应该包含所有abiFilters "x86_64", "x86", "arm64-v8a", "mips", "armeabi", "armeabi-v7a"应用程序级别的build.gradle文件吗?

标签: android

解决方案


尝试将其推入设备libmodpdfium.so中的以下路径/system/lib/


推荐阅读