Gradle 添加簽名配置實(shí)現(xiàn)快速打包
在app build.gradle里添加signingConfigs(Android7.0開(kāi)始多了V2簽名)
signingConfigs{
debug{
v1SigningEnabled true
v2SigningEnabled true
}
release{
storeFile
storePassword
keyAlias
keyPassword
v1SigningEnabled true
v2SigningEnabled true
}
}
//讀取簽名配置文件
def getSigningProperties() {
def propFile = file('signing.properties')
if (propFile.canRead()) {
def Properties props = new Properties()
props.load(new FileInputStream(propFile))
if (props != null && props.containsKey('STORE_FILE') && props.containsKey('STORE_PASSWORD') &&
props.containsKey('KEY_ALIAS') && props.containsKey('KEY_PASSWORD')) {
android.signingConfigs.release.storeFile = file(props['STORE_FILE'])
android.signingConfigs.release.storePassword = props['STORE_PASSWORD']
android.signingConfigs.release.keyAlias = props['KEY_ALIAS']
android.signingConfigs.release.keyPassword = props['KEY_PASSWORD']
} else {
println 'signing.properties found but some entries are missing'
android.buildTypes.release.signingConfig = null
}
} else {
println 'signing.properties not found'
android.buildTypes.release.signingConfig = null
}
}
Tips:增強(qiáng)擴(kuò)展性的寫(xiě)法檀轨,新建一個(gè)signing.properties芹助,把簽名配置信息寫(xiě)在里面轴或,提交版本控制時(shí)育勺,不提交這個(gè)簽名配置文件
#STORE_FILE = ****.jks --> keystore 文件位置
#STORE_PASSWORD = ****** ----> keystore 密碼
#KEY_ALIAS = sharepack ----> keystore 文件用到的別名
#KEY_PASSWORD = ****** ----> keystore 文件用到的別名的密碼
STORE_FILE = /quick_packet.jks
STORE_PASSWORD = 123456
KEY_ALIAS = quick_packet
KEY_PASSWORD = 123456
Tips:必須在buildType里release使用signingConfig棚瘟,不然不帶簽名握牧。
以及下方代碼可以指定包輸出目錄
//指定輸出磁盤(pán)目錄
//輸出類(lèi)型
applicationVariants.all {
//判斷是release還是debug版本
def buildType = it.buildType.name
//獲取當(dāng)前時(shí)間的"YYYY-MM-dd"格式诲泌。
def createTime = new Date().format("YYYY-MM-dd", TimeZone.getTimeZone("GMT+08:00"))
//如果是正式包,將其輸入到指定文件夾
if (buildType == "release") {
it.getPackageApplication().outputDirectory = new File(APK_OUTPUT_PATH)//可以弄成常量寫(xiě)在項(xiàng)目的gradle.properties
}
}
之后雙擊這個(gè)就可以了