微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React Native:Android 找不到“libj2v8utils.so”

如何解决React Native:Android 找不到“libj2v8utils.so”

我有一个关于 Android 版本的棘手问题。我使用的框架是 React Native 0.61.5。

我必须使用特定的 SDK,该 SDK 需要使用名为 libj2v8utils.so 的库。经过一些深入研究后,我注意到这个库应该伴随着另一个libj2v8.so

libj2v8.so 库始终存在于 <root>/android/app/build/intermediates/merged_native_libs/debug/out/lib/arm64-v8a 路径中(所有架构),而 libj2v8utils.so 库仅存在于 arm64-v8a 路径中{1}} 架构。

遗憾的是我不是Android环境的专家,以及Maven,build.gradle等项目配置的问题。但是,我进行了一些尝试,如下所示:

packagingOptions {
        pickFirst '**/*.so'
    }

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

一切都没有成功。

错误详情如下:

java.lang.NoClassDefFoundError: com.my.custom.sdk.common.internal.core.utils.J2V8Utils
...
can't get JS engine attributes
MyCustomSDK: Caused by: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/my.bundle123==/base.apk"],nativeLibraryDirectories=[/data/app/my.bundle123==/lib/arm,/data/app/my.bundle123==/base.apk!/lib/armeabi-v7a,/system/lib,/system/vendor/lib]]] Couldn't find "libj2v8utils.so"

最后,在应用程序日志中我看到:

authentication Failed Internal error occurred (TypeError: t.getData is not a function)

以下屏幕截图显示了为不同架构生成的库:

enter image description here

当我通过 npx react-native run-android 构建 APK 时,我没有注意到任何特别的东西。我该如何解决这个问题?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。