我尝试了一些预编译的本地库构建Android应用程序: liba.so和libb.so.1.2.3如何使用Gradle将versioned * .so文件包含到apk中?
库放入jniLibs子目录。 构建APK文件后,仅包含liba.so,但不包含libb.so.1.2.3。
结果是可预测的。应用程序在启动时崩溃。
如何构建脚本以将jniLibs中的所有文件包含到APK中?
我尝试了一些预编译的本地库构建Android应用程序: liba.so和libb.so.1.2.3如何使用Gradle将versioned * .so文件包含到apk中?
库放入jniLibs子目录。 构建APK文件后,仅包含liba.so,但不包含libb.so.1.2.3。
结果是可预测的。应用程序在启动时崩溃。
如何构建脚本以将jniLibs中的所有文件包含到APK中?
不幸的是,我不再为Android开发,所以我无法测试这个,但我知道Gradle,这可能适合你。纵观Android DSL docs,你也许可以改变对jniLibs
文件夹中的过滤:
android {
sourceSets {
main {
jniLibs.filter.include("**/*")
}
}
}
让我知道这是否正常工作!
我试过这个,它给出了一个错误:**不能设置只读属性:过滤类:com.android.build.gradle.internal.api.DefaultAndroidSourceDirectorySet ** – kostashv
你可以尝试设置整个jniLibs吗?如果我可以安装Android SDK,我可以尝试明天测试它。但它会像'jniLibs {filter =''srcDir =''}'等等(文档中的所有属性)。 – sm4
所以过滤器是一个PatternSet。我已经更新了我的答案。这编译(我试着用Android插件),但我不能部署应用程序,因为我没有任何.so试试。 – sm4
你能解决你的问题吗?我也需要解决方案。 – user1506104