- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我一直在使用新的 APK splits Android 0.13 插件的功能,我设法将大部分构建脚本的大小减半,并将构建速度提高了 4 倍。我的应用程序在每个平台上都有超过 20MB 的库,因此优先考虑保持 APK 较小。在 0.13 之前,我们有几个脚本可以在正确的构建文件夹中动态暂存 .so 文件(取决于我们构建的平台)并执行完整构建。这工作正常但非常慢并且涉及 gradle 和非 gradle 脚本的不幸混合。
最新的 APK 拆分功能解决了我的大部分问题,但我仍然遇到 armeabi-v7a 库的问题。似乎当 gradle 构建 armeabi-v7a 风格时,它只查找/libs/armeabi-v7a 文件夹中定义的库,并忽略为 armeabi 而不是 armeabi-v7a 编译的库。
例如,这是我的一个应用:
App1/
- libs
- armeabi
- lib1.so
- lib2.so
- lib3.so
- armeabi-v7a
- lib3.so
- x86
- lib1.so
- lib2.so
- lib3.so
当我为 armeabi-v7a 编译它时,gradle 包括 armeabi-v7a/lib3.so 但不包括 armeabi/lib1.so 和 armeabi/lib2.so。在运行时,APK 不工作(显然),因为它找不到 lib1.so 和 lib2.so。
有没有办法告诉 gradle 将在 armeabi/但不在 armeabi-v7a/中找到的库添加到 armeabi-v7a APK?
最佳答案
我打开了一个问题 b.android.com(参见 https://code.google.com/p/android/issues/detail?id=77490),这是 0.13+ 中的一个已知限制。希望它会尽快修复。
关于android - 将 armeabi 和 armeabi-v7a 库与 APK 拆分一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26348608/
我是一名优秀的程序员,十分优秀!