带有2个带jniLibs库的Android应用程序 – 使应用程序崩溃

带有2个带jniLibs库的Android应用程序 – 使应用程序崩溃,第1张

概述在我的 Android应用程序中,我使用两个库,每个库都有自己的jniLibs. 图书馆1 – https://github.com/tekinarslan/AndroidPdfViewer 图书馆2 – 自定义视频播放器sdk 该应用程序将编译和构建正常. 两个库都将jniLibs放在正确的位置. 似乎只有一个库可以工作,在本例中是pdfView.库2被称为.它打破了,日志说它无法为它加载jni 在我的 Android应用程序中,我使用两个库,每个库都有自己的jnilibs.

图书馆1 – https://github.com/tekinarslan/AndroidPdfViewer

图书馆2 – 自定义视频播放器sdk

该应用程序将编译和构建正常.

两个库都将jnilibs放在正确的位置.

似乎只有一个库可以工作,在本例中是pdfVIEw.库2被称为.它打破了,日志说它无法为它加载jnilibs.

有没有人遇到过它?谢谢

Update code after chaeyoungx Feedback:

App Build.gradle:

androID {    compileSdkVersion 23    buildToolsversion "23.0.2"defaultConfig {    applicationID "com.my.app"    minSdkVersion 17    targetSdkVersion 22    versionCode 14    versionname "1.0"    ndk { abiFilters "armeabi","armeabi-v7a","arm64-v8a","x86","mips" }}   ....

我在两个文件中尝试了以下代码:gradle.propertIEs(Project and Global)

androID.useDeprecatedndk=true

Still have the same problem.

解决方法 确保您已为每个abi构建了库.看看你最后的apk文件.在文件夹库中,您将找到每个abi具有库的文件夹.每个应该有相同的库.
如果你没有足够的:

>为其他abis构建您的库
>排除这些文件夹,即

armeabi    lib1.so    lib2.so    lib3.soarmeabi-v7a    lib1.so    lib2.so    lib3.soarm64-v8a    lib1.so

在这种情况下,arm64设备将转到arm64-v8a文件夹并尝试查找lib2,lib3,并且无法找到它们.因此在java应用程序的gradle文件中排除arm64-v8a文件夹,因此arm64设备可以使用armeabi文件夹.

总结

以上是内存溢出为你收集整理的带有2个带jniLibs库的Android应用程序 – 使应用程序崩溃全部内容,希望文章能够帮你解决带有2个带jniLibs库的Android应用程序 – 使应用程序崩溃所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1122738.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存