两个本机库具有不同的cpu架构集

时间:2017-03-24 09:09:03

标签: android android-ndk shared-libraries cpu-architecture abi

在我的项目中,我有armeabi, mips, x86的一个本机共享库,它在所有设备上运行良好(例如lib1.so)。现在我添加了不同的本机库,它为所有架构(armeabi, armeabi-v7a, arm64-v8a, mips, x86, x86_64)提供了一组库。例如。 lib2.so.
它在某些设备上给了我java.lang.UnsatisfiedLinkError。例如,它试图从armeabi-v7a加载,但这个cpu架构没有lib1.so.

如何为不同的库加载不同的文件?或者我可以将第一个lib1.so文件复制到不同的体系结构中。但是我应该将哪个文件夹复制到其他文件夹?

1 个答案:

答案 0 :(得分:2)

您只需将以下内容添加到app gradle文件

android {
    defaultConfig {
        ndk {
            abiFilters "armeabi" , "mips", "x86 "
        }
    }
}