如果我使用Android Studio"生成签名APK"从Build菜单中它可以工作并生成一个签名的apk。 问题是如果我尝试运行
,则不会生成apk./gradlew clean build assembleRelease
我已经像这样配置了build.gradle:
signingConfigs {
release {
//set values in ~/.gradle/gradle.properties to sign with your own keystore and certificate
storeFile file(project.hasProperty("KEYSTORE_FILE") ? KEYSTORE_FILE : "/")
storePassword project.hasProperty("KEYSTORE_PASSWORD") ? KEYSTORE_PASSWORD : ""
keyAlias project.hasProperty("KEY") ? KEY : ""
keyPassword project.hasProperty("KEY_PASSWORD") ? KEY_PASSWORD : ""
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
signingConfig signingConfigs.release
}
}
lintOptions {
abortOnError false
}
我的gradle.properties文件如下所示:
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.daemon=true
KEYSTORE_FILE=/home/user/Documents/programs/keystoreAndroidStudio/keystore.jks
KEYSTORE_PASSWORD=xxxxxx yyyyy
KEY=Client
KEY_PASSWORD=xxxxx yyyyy
我做错了什么?
编辑:我也尝试将签名参数直接送到gradlew,但它也不起作用。./gradlew assembleRelease -Pandroid.injected.signing.store.file=$KEYFILE -Pandroid.injected.signing.store.password=$STORE_PASSWORD -Pandroid.injected.signing.key.alias=$KEY_ALIAS -Pandroid.injected.signing.key.password=$KEY_PASSWORD
我开始认为这与我的包含空格的密码有关。我尝试给上一个命令一个错误的密码并且它没有抱怨,它仍然说BUILD SUCCESSFUL