多渠道打包
2020-06-29 本文已影响0人
我看Android
build.gradle文件配置:
def buildTime() {
def date = new Date()
def formattedDate = date.format('YYYYMMddHHmmss')
return formattedDate
}
productFlavors {
dev {
// gradle 3.0.0 以上需要有这个
dimension "app"
applicationId "shellapp.com.dev" //不同的包可以配置不同的applicationId
manifestPlaceholders =[app_name:"测试demo01",app_icon:"@mipmap/ic_launcher"] //AndroidManifest 属性配置
buildConfigField "String", "HTTP_URL", "\"11.333.444\"" //配置相关地址
}
state {
// gradle 3.0.0 以上需要有这个
dimension "app"
applicationId "shellapp.com.state"
manifestPlaceholders =[app_name:"测试demo02",app_icon:"@mipmap/ic_launcher"]
buildConfigField "String", "HTTP_URL", "\"11.222.333\"" //配置相关地址
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
// 批量打包(gradle 3.0.0 以下)
/* applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
//输出apk名称为:渠道名_版本名_时间.apk
def fileName = "${variant.productFlavors[0].name}_v${defaultConfig.versionName}_${buildTime()}.apk"
output.outputFile = new File(outputFile.parent, fileName)
}
}
}*/
// 批量打包(gradle 3.0.0 以上)
applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = "${variant.productFlavors[0].name}_v${defaultConfig.versionName}_${buildTime()}.apk"
}
}
}
}
AndroidManifest 详情
<application
android:name=".App"
android:allowBackup="true"
android:icon="${app_icon}"
android:label="${app_name}"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">