所以我构建了一个包含本机库(libnative-lib.so)的Android aar库。由于向后兼容性考虑,它仅为armeabi和x86架构而构建。
现在,我将aar文件放在我的“客户端”应用程序中,我可以清楚地看到libnative-lib.so位于aar的jni / armeabi和jni / x86文件夹下。
但该应用程序崩溃了这条消息:
java.lang.UnsatisfiedLinkError: ...
nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]] couldn't find "libnative-lib.so"
这看起来客户端应用程序无法从aar中找到nativelib。有什么建议吗?
答案 0 :(得分:0)
实际上在我的情况下,由于上面提到的向后兼容性考虑,我需要将它放在我的库的build.gradle中:
packagingOptions {
exclude 'lib/armeabi-v7a/libnative-lib.so'
exclude 'lib/x86_64/libnative-lib.so'
}
防止构建远离不需要的架构。