从生产 APK 中排除 jniLibs 文件夹
Exclude jniLibs folder from Production APK
我的应用具有 Gradle 中定义的开发和生产风格。在我的生产风格中,我希望生成的 APK 文件不包含我的 x86 jniLibs 二进制文件。我只将它们用于 genymotion 中的测试,其中一些很大,所以我真的需要 space.
我能让它有点工作的唯一方法是手动删除我的 src/main/jniLibs/x86 文件夹然后构建,但我每次构建时都必须这样做,然后稍后恢复库。有没有更简单的方法使用 gradle/proguard/something?
将库从 app/src/main/jniLibs/x86
移动到 app/src/debug/jniLibs/x86
这是为 RELEASE 构建变体排除 x86 SO 文件的配置:
android {
buildTypes {
release {
ndk {
abiFilters "armeabi-v7a", "armeabi" // includes ARM SO files only, so no x86 SO file
}
}
}
}
而且,"debug" 构建变体输出中有 x86 SO,因为没有设置过滤器。
我的应用具有 Gradle 中定义的开发和生产风格。在我的生产风格中,我希望生成的 APK 文件不包含我的 x86 jniLibs 二进制文件。我只将它们用于 genymotion 中的测试,其中一些很大,所以我真的需要 space.
我能让它有点工作的唯一方法是手动删除我的 src/main/jniLibs/x86 文件夹然后构建,但我每次构建时都必须这样做,然后稍后恢复库。有没有更简单的方法使用 gradle/proguard/something?
将库从 app/src/main/jniLibs/x86
移动到 app/src/debug/jniLibs/x86
这是为 RELEASE 构建变体排除 x86 SO 文件的配置:
android {
buildTypes {
release {
ndk {
abiFilters "armeabi-v7a", "armeabi" // includes ARM SO files only, so no x86 SO file
}
}
}
}
而且,"debug" 构建变体输出中有 x86 SO,因为没有设置过滤器。