如何在 Gradle 中将产品风味添加到版本名称
How to add product flavor to version name in Gradle
我有一个 Android Gradle 项目有多种风格。
android {
...
productFlavors {
apple {
applicationId "com.myapp.apple"
}
orange {
applicationId "com.myapp.orange"
}
banana {
applicationId "com.myapp.banana"
}
}
...
}
在我的 build.gradle
中,我还有以下代码将 versionName
设置为 0.8-dev 如果它是本地构建或 0.8-123 如果是 Jenkin 的构建。
android {
...
defaultConfig {
...
// Get the build number from Jenkins, otherwise use 'dev'
ext.buildNumber = System.getenv("BUILD_NUMBER") ?: "dev"
versionName "0.8-$buildNumber"
...
}
}
因为我现在对同一个项目有不同的风格,我想在 versionName
前加上风格,所以它看起来像这样 apple-0.8-dev 或 orange-0.8-dev,具体取决于构建的风味。
我该怎么做?
我试过使用 BuildConfig.FLAVOR
但我无法在 build.gradle
中访问它。
在您的口味中重新定义 versionName
:
def version="0.8"
android {
defaultConfig {
versionName version
}
...
productFlavors {
apple {
applicationId "com.myapp.apple"
versionName "apple-$version"
}
orange {
applicationId "com.myapp.orange"
versionName "orange-$version"
}
banana {
applicationId "com.myapp.banana"
versionName "banana-$version"
}
}
...
}
我有一个 Android Gradle 项目有多种风格。
android {
...
productFlavors {
apple {
applicationId "com.myapp.apple"
}
orange {
applicationId "com.myapp.orange"
}
banana {
applicationId "com.myapp.banana"
}
}
...
}
在我的 build.gradle
中,我还有以下代码将 versionName
设置为 0.8-dev 如果它是本地构建或 0.8-123 如果是 Jenkin 的构建。
android {
...
defaultConfig {
...
// Get the build number from Jenkins, otherwise use 'dev'
ext.buildNumber = System.getenv("BUILD_NUMBER") ?: "dev"
versionName "0.8-$buildNumber"
...
}
}
因为我现在对同一个项目有不同的风格,我想在 versionName
前加上风格,所以它看起来像这样 apple-0.8-dev 或 orange-0.8-dev,具体取决于构建的风味。
我该怎么做?
我试过使用 BuildConfig.FLAVOR
但我无法在 build.gradle
中访问它。
在您的口味中重新定义 versionName
:
def version="0.8"
android {
defaultConfig {
versionName version
}
...
productFlavors {
apple {
applicationId "com.myapp.apple"
versionName "apple-$version"
}
orange {
applicationId "com.myapp.orange"
versionName "orange-$version"
}
banana {
applicationId "com.myapp.banana"
versionName "banana-$version"
}
}
...
}