Android studio 多渠道打包,但只生成一個debug包(不需要多渠道debug包)
阿新 • • 發佈:2019-01-24
多渠道打包方式,網上有很多的介紹了,這裡就不再多說了。
配置好打多渠道包,每次手機連線電腦,想執行一下測試。發現在buildout/apk目錄下生成了每個渠道的debug包。而且每執行一次,就成生一個debug包。
這樣是不是很煩。如果只想生成一個debug的包。怎麼做?
這是程式碼:
if (outputFile != null && outputFile.name.endsWith('.apk')) { def fileName if (variant.buildType.name.equals('debug')) { fileName = "xiaopeng-${defaultConfig.versionName}_debug.apk" } else { def timeStamp = new Date().format("yyyyMMddHHmm", TimeZone.getTimeZone("GMT+8")); fileName = outputFile.name.replace(".apk", "-${defaultConfig.versionName}-${timeStamp}.apk") } output.outputFile = new File(outputFile.parent, fileName) }
只需要在生成包的時候,判斷如果是debug包,就使用預設的名字就行。如果是release包,則生成渠道名+版本+時間的包。
當然,如果你需要的是打多渠道debug包,則可以不用這樣做。按預設規則就好。
打包的時候,在as左下角,可以檢視,你打的包是debug還是release。可以自行選擇。
要是手機連線電腦直接run,找不到apk包,去重新整理一下gradle(右上角)
如下錯誤(The APK file XXX\build\outputs\apk\XX-offical-release-1.0-201611091539.apk does not exist on disk.
Error while Installing APK)
這篇文章,就是為了說明,打多渠道的包,同時debug包,只需要有一個的情況。