java.lang.UnsatisfiedLinkError:dlopen失败:.so库是64位而不是32位

时间:2018-04-30 23:13:51

标签: java android android-studio android-ndk java-native-interface

我有一个C库,我希望在JNI中包装并从我的android项目调用。 .so文件是以下体系结构:i386:x86-64。每当我将它添加到src / main / jniLibs / arm64-v8a | armeabi-v7a | x86文件夹中的项目时,我都会收到错误消息,说.so文件是64位而不是32位。我试过交叉引用这个问题并注意到人们通常会遇到相反的问题,其中.so是32位而不是64位。我已经尝试梳理Android文档,看看我搞砸了但似乎无法找到解决方案。

1 个答案:

答案 0 :(得分:2)

64位库不应位于 src / main / jniLibs / armeabi-v7a 文件夹中。如果您的设备支持 arm64-v8a ABI,则该应用将使用64位库。如果设备不兼容,则无法使用此库。