【发布时间】:2017-09-15 15:32:36
【问题描述】:
我有一个带有以下内容的 build.gradle 文件设置(我显然已经排除了不重要的部分):
android { defaultConfig { ndk { abiFilters 'armeabi', 'armeabi-v7a', 'x86' } }
productFlavors {
flavor1 { ... }
flavor2 { ... }
flavor3 { ... }
flavor4 { ... }
flavor5 { ... }
}
buildTypes {
debug {
externalNativeBuild { ndkBuild { cFlags '-DDEBUG' } }
...
}
release {
externalNativeBuild { ndkBuild { cFlags '-DRELEASE' } }
...
}
}
externalNativeBuild {
ndkBuild {
path 'jni/Android.mk'
}
}
它工作,但它为每个flavor+buildType 编译本机代码。所以不仅debug和release,还有flavor1Debug、flavor2Release等,需要很长时间
我如何告诉 gradle 只为这两种构建类型执行 externalNativeBuild,并将它们用于所有类型?
【问题讨论】:
-
我在 cmake 构建时遇到了类似的问题。添加 cmake 构建后,Gradle 配置需要将近一小时。我们确实有很多口味,我们的 C++ 库和 cmake 配置也很大。
标签: android gradle android-ndk android-gradle-plugin android-productflavors