Я предлагаю вам использовать решение , о котором сообщает @ Ranjan .Это более чистое и стандартное решение.
Однако, если вы хотите использовать команду командной строки, все свойства, передаваемые gradle в командной строке через параметр -P
, доступны в переменной project
вваш сценарий gradle.Вы можете сделать что-то вроде этого:
gradle assembleRelease -PmyKeyPassword='xxx' -PmyStorePassword='xxx' -PmyKeyAlias='xxx' -PmyStoreFile='...xxx.keystore'
, а затем определить в своем build.gradle
.
signingConfigs {
release {
storeFile project.mystoreFile
storePassword project.myStorePassword
keyAlias project.myKeyAlias
keyPassword project.myKeyPassword
}
}
Обратите внимание, потому что это может вызвать ошибки , если вы нене указывайте ключи в команде gradle (не очень хорошо с моей точки зрения).Вы можете решить проблему, выполнив проверку параметра (используя метод project.hasProperty(xxx)
) и определив значение default в build.gradle
.
Примерно так:
signingConfigs {
release {
storeFile project.hasProperty('myStoreFile') ? project.myStoreFile : 'default'
//..
}
}