无法在arm64设备上加载arm64-v8a .so

时间:2017-02-01 07:43:05

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

我构建了一个仅定位于 arm64-v8a 设备的应用程序。我已经构建了相应的.so文件并将它们放在 libs 下的 arm64-v8a 文件夹下。 现在,当我尝试在nexus 6p,nexus 5x,samsung s6,一加三(arm64-v8a架构)等设备上安装应用程序时,我收到错误INSTALL_FAILED_NO_MATCHING_ABIS尽管abi是可用。

现在,如果我也包含armeabi-v7a库,那么应用程序运行正常。它正在 arm64 设备上选择 armeabi-v7a 库,尽管有这些库。 .so文件是针对AArch64构建的,它支持arm64-v8a架构。

同样是x86_64的情况。

我在这里放置了apk和应用程序代码:https://drive.google.com/open?id=0B7eQ8JMBWlsMZ2F2RUNuaVA3WFE。 我们不确定我们构建应用程序的方式是否有问题,或者这是ndk的问题。

还附加了模拟器配置here

1 个答案:

答案 0 :(得分:3)

当我将renderscriptTargetApi更改为21时,问题就解决了。之前它是19,因为它加载了32位二进制文​​件。