赞
踩
今天在写 build.gradle.kts
文件的时候,通过 getByName 一直提示 SigningConfig with name 'myConfig' not found
, 但通过 signingConfigs.findByName 返回 null
println(“signingConfigs myConfig=”+signingConfigs.getByName(“myConfig”))
最后原因就是因为我把 signingConfigs 写到了 buildTypes 的后面,当把 signingConfigs 的定义放在 buildTypes 之前,就完美解决了这个问题
android {
...
signingConfigs {
create("myConfig") {
keyAlias = keystoreProperties["keyAlias"] as String
keyPassword = keystoreProperties["keyPassword"] as String
storeFile = file(keystoreProperties["storeFile"] as String)
storePassword = keystoreProperties["storePassword"] as String
}
}
...
}
android { ... buildTypes { release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) println("signingConfigs release="+signingConfigs.getByName("release")) signingConfig = signingConfigs.getByName("release") } debug { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) isDebuggable = true println("signingConfigs myConfig="+signingConfigs.getByName("myConfig")) signingConfig = signingConfigs.getByName("myConfig") } } ... }
补充:
根据目录下:keystore.properties
storePassword=android
keyPassword=android
keyAlias=platform
storeFile=android_debug.keystore
build.gradle.kts
import java.io.FileInputStream import java.util.Properties ... // Create a variable called keystorePropertiesFile, and initialize it to your // keystore.properties file, in the rootProject folder. val keystorePropertiesFile = rootProject.file("keystore.properties") // Initialize a new Properties() object called keystoreProperties. val keystoreProperties = Properties() // Load your keystore.properties file into the keystoreProperties object. keystoreProperties.load( FileInputStream(keystorePropertiesFile)) ... android { ... signingConfigs { create("myConfig") { keyAlias = keystoreProperties["keyAlias"] as String keyPassword = keystoreProperties["keyPassword"] as String storeFile = file(keystoreProperties["storeFile"] as String) storePassword = keystoreProperties["storePassword"] as String } create("release") { keyAlias = "abcd" keyPassword = "password" storeFile = file("../keystore.jks") //根目录下 storePassword = "password" } } buildTypes { release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) println("signingConfigs release="+signingConfigs.getByName("release")) signingConfig = signingConfigs.getByName("release") } debug { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) isDebuggable = true println("signingConfigs myConfig="+signingConfigs.getByName("myConfig")) signingConfig = signingConfigs.getByName("myConfig") } } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。