1.配置 productFlavors
productFlavors {
_dev {//開發(fā)環(huán)境
applicationId "com.demo.video.dev"
//設置baseUrl 使用方法Application.getContext().getResources().getString(R.string.API_SERVER)
resValue "string","API_SERVER","www.baidu.dev.com"
manifestPlaceholders = [app_name: "U視頻_dev"]
}
_test {//測試環(huán)境
applicationId "com.demo.video.test"
resValue "string","API_SERVER","www.baidu.test.com"
manifestPlaceholders = [app_name: "U視頻_test"]
}
_prod {//正式環(huán)境
applicationId "com.demo.video"
resValue "string","API_SERVER","www.baidu.com"
manifestPlaceholders = [app_name: "U視頻"]
}
}
2.配置APK輸入路徑 (可配置或者不配置 默認在build/outputs下)
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.config
debuggable false
}
debug {
minifyEnabled false
signingConfig signingConfigs.config
debuggable true
}
//打包輸出
applicationVariants.all { variant ->
def fileName
def buildName
variant.outputs.each { output ->
def outputFile = output.outputFile
variant.productFlavors.each { product ->
buildName = product.name //獲取渠道名字
}
if (outputFile != null && outputFile.name.endsWith('.apk')) {
//打包后的apk名稱 : UVideo_V1.0_test_0808_1109.apk
fileName = "UVideo_V${defaultConfig.versionName}" + buildName + "_" + createDate() + ".apk"
output.outputFile = new File("apk" + '/', fileName)
}
}
}
}
//獲取時間的方法
def createDate() {
return new Date().format("MMdd_HHmm", TimeZone.getTimeZone("GMT+8"))
}
3.打包
使用AndroidStudio可在Terminal下輸入./gradlew assembleRelease
或者輸入對應的./gradlew assemble_dev
也可在右側(cè)Gradle中選中要打包的版本執(zhí)行
4.安裝/測試應用
1.使用ADB
可在終端下輸入 adb install apk路徑
即可
2.使用Gradle
在右側(cè)Gradle下選擇install目錄下對應的版本運行即可