Android gradle task任务打包怎么分辨打哪个渠道的包
时间: 2024-02-18 09:01:56 浏览: 173
Android studio 使用Gradle进行分渠道打包
在 Android Gradle 中,可以通过配置 productFlavors 来为不同渠道定制不同的构建类型和资源文件,从而打包不同的渠道包。在打包时,可以通过指定不同的渠道参数来选择打哪个渠道的包。
具体实现步骤如下:
1. 在项目的 build.gradle 文件中定义 productFlavors:
```groovy
android {
...
flavorDimensions "channel"
productFlavors {
google {
dimension "channel"
...
}
huawei {
dimension "channel"
...
}
...
}
}
```
2. 在 app 模块的 build.gradle 文件中配置不同的渠道参数:
```groovy
android {
...
defaultConfig {
...
manifestPlaceholders = [
CHANNEL_NAME: "google" // 渠道参数
]
}
...
}
```
3. 在 Gradle Task 中获取渠道参数并打包:
```groovy
android.applicationVariants.all { variant ->
def channelName = variant.buildType.manifestPlaceholders.CHANNEL_NAME
def apkName = "app-${variant.versionName}-${channelName}-${variant.buildType.name}.apk"
variant.outputs.all {
outputFileName = apkName
}
}
```
这样就可以根据渠道参数打出不同的渠道包了。
阅读全文