我喜歡將密碼保留在我的構建文件中。因此,我創建了一個屬性文件,我加載使用
def keystorePropertiesFile = rootProject.file("./local.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
然後我定義signingConfigs像這樣:
signingConfigs {
releaseSigning {
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['keystore.live.storepassword']
keyAlias = keystoreProperties['keystore.live.keyalias']
keyPassword = keystoreProperties['keystore.live.keypassword']
}
debugSigning {
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['keystore.debug.storepassword']
keyAlias = keystoreProperties['keystore.debug.keyalias']
keyPassword = keystoreProperties['keystore.debug.keypassword']
}
}
這並不與菜單選項「創建簽名的apk」,所以我創建口味很好地工作:
productFlavors {
mydebug {
signingConfig signingConfigs.debugSigning
}
myrelease {
signingConfig signingConfigs.releaseSigning
}
}
現在簽名配置與工具欄上的運行按鈕一起工作。對於默認密鑰庫中的local.properties看起來像
ndk.dir=/opt/sdk/ndk-bundle
sdk.dir=/opt/sdk
storeFile=/home/christine/.android/debug.keystore
keystore.debug.storepasswd=android
keystore.debug.keyalias=androiddebugkey
keystore.debug.keypassword=android
keystore.live.storepasswd=android
keystore.live.keyalias=androiddebugkey
keystore.livetest.keypassword=android
在你詹金斯構建腳本,你需要創建一個local.properties到屬性文件是您的構建服務器上的符號鏈接。
您是否爲發佈buildType設置了此簽名配置? – Krylez
我想這個消息意味着你需要在Gradle文件中的'buildscript {}'裏面使用signingConfigs。 –
@JBNizet我不認爲這是真的,或者至少對我的配置來說不是這樣。 – Krylez