Android NDK java.lang.UnsatisfiedLinkError: findLibrary returned null when Multidex enabled

Android NDK java.lang.UnsatisfiedLinkError: findLibrary returned null when Multidex enabled

java.lang.UnsatisfiedLinkError: Couldn't load LPROCR from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.vehicleappraisalmanager-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.vehicleappraisalmanager-2, /system/lib]]]: findLibrary returned null

我在启用 multidex 时遇到了这个严重错误。如果 multidex 禁用,则 .so 文件成功链接并且代码工作正常。但是当 multidex 启用时得到 unstisfiedLinkError。

这里是我加载 so 文件的代码

 static {
        System.loadLibrary("LPROCR");
    }

请确保您加载库的 class 是在正确的包下。

我找到了关于启用 multidex 时 unsatisfiedlinkError 的好解决方案。 我从 jniLibs 复制 .​​so 文件夹并粘贴到 app/build/intermediates/jinLibs 文件夹,然后重建应用程序并构建 apk。然后应用程序工作正常。