У меня возникают проблемы, когда System.getenv() возвращает значение null для переменной среды. Мой пароль хранится в переменной среды RELEASE_PASSWORD. Когда я это сделаю:
$ echo $RELEASE_PASSWORD
он выводит правильное значение, поэтому я знаю, что переменная установлена.
Я изначально устанавливал signingConfig signingConfigs.release
в release buildType, и все работало нормально, но мне нужны разные подписи для разных продуктов. Если я жестко программирую пароль, он работает так же, как и предполагается. Когда я пытаюсь прочитать пароль из переменной окружения, ситуация становится нестабильной.
Это какая-то проблема в области видимости?
Это то, что у меня есть в моем build.gradle
.
android {
...
signingConfigs {
release {
storeFile ...;
keyAlias ...;
storePassword System.getenv("RELEASE_PASSWORD");
keyPassword System.getenv("RELEASE_PASSWORD");
}
unsigned {
keyAlias "";
storePassword "";
keyPassword "";
}
}
buildTypes {
debug {
versionNameSuffix = "-DEBUG"
}
release {
}
}
flavorGroups "storeFront"
productFlavors {
def googleVariable = signingConfigs.release
def amazonVariable = signingConfigs.unsigned
google {
flavorGroup "storeFront"
signingConfig googleVariable
}
amazon {
flavorGroup "storeFront"
signingConfig amazonVariable
}
}
}