Android如何自定義修改打包apk名稱
當我們進行apk打包時,默認會生成app-debug.apk或者app-release.apk,每次都需要手動去修改apk的名稱,用于區(qū)分各個版本的名稱。
其實,我們可以修改build.gradle配置文件,每次打包的時候自動修改apk名稱
一、修改Module的build.gradle配置文件
在android閉包下添加如下信息:
android{ //... android.applicationVariants.all{ variant -> variant.outputs.all{ def createTime = new Date().format("YYYYMMddHHmm", TimeZone.getTimeZone("GMT+08:00")) def fileName = "${project.name}_${buildType.name}_${defaultConfig.versionName}_${createTime}.apk" outputFileName = fileName } } //... }
- ${project.name}:當前Module的名稱
- ${buildType.name}:當前的構建類型,debug或者release或者是自定的flavor
- ${defaultConfig.versionName} :版本名稱,對于defaultConfig中的versionName,類比的我們也可以使用 ${defaultConfig.versionCode}來表示defaultConfig中的versionCode;
- ${createTime}:自定義的打包時間,時間格式是:YYYYMMddHHmm。
二、多渠道包打包修改apk名稱
在android閉包下添加如下信息:
android{ //... android.applicationVariants.all { variant -> variant.outputs.all { def createTime = new Date().format("YYYYMMddHHmm", TimeZone.getTimeZone("GMT+08:00")) def fileName = "${variant.productFlavors[0].name}_${buildType.name}_${variant.versionName}_${createTime}.apk" outputFileName = fileName } } //... }
三、Kotlin DSL build.gradle.kts配置自定義打包apk名字
首先需要添加導包,import java.time.LocalDateTime和import java.time.format.DateTimeFormatter,用于獲取當前時間。
在android閉包下添加如下信息:
import java.time.LocalDateTime import java.time.format.DateTimeFormatter android{ //... android.applicationVariants.all { outputs.all { if (this is com.android.build.gradle.internal.api.ApkVariantOutputImpl) { val config = project.android.defaultConfig val versionName = config.versionName val formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmm") val createTime = LocalDateTime.now().format(formatter) this.outputFileName = "${project.name}_${this.name}_${versionName}_$createTime.apk" } } } //... }
到此這篇關于Android自定義修改打包apk名稱的文章就介紹到這了,更多相關android打包apk名稱內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Android編程視頻播放API之MediaPlayer用法示例
這篇文章主要介紹了Android編程視頻播放API之MediaPlayer用法,結合實例形式分析了基于Android API實現視頻播放功能的多媒體文件讀取、判斷、事件響應及流媒體播放等相關實現技巧,需要的朋友可以參考下2017-08-08Android在view.requestFocus(0)返回false的解決辦法
這篇文章主要介紹了Android在view.requestFocus(0)返回false的解決辦法,非常不錯,具有參考借鑒價值,需要的朋友參考下2016-08-08Android中的sqlite查詢數據時去掉重復值的方法實例
今天小編就為大家分享一篇關于Android中的sqlite查詢數據時去掉重復值的方法實例,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01Android SharedPreferences實現記住密碼和自動登錄界面
本篇文章主要介紹了Android記住密碼和自動登錄界面的實現(SharedPreferences),具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-02-02修改Android簽名證書keystore的密碼、別名alias以及別名密碼
這篇文章主要介紹了修改Android簽名證書keystore的密碼、別名alias以及別名密碼的相關資料,需要的朋友可以參考下2015-12-12