У меня есть пользовательский тип сборки beta
, определенный следующим образом:
buildTypes {
debug {
applicationIdSuffix ".debug"
testCoverageEnabled = false
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
beta {
initWith release
}
}
Учитывая, что beta
использует initWith release
, можно ожидать, что бета-версия будет иметь все свойства release
. Однако при попытке запустить beta
, Android Studio отобразит следующую ошибку
"APK для вашего текущего выбранного варианта не подписан ..."
Создание конфигурации подписи в настройках проекта, выбор ее и нажатие кнопки «Применить» не работает. Вместо этого необходимо вручную написать конфигурацию подписи:
signingConfigs {
beta {
storeFile file(‘…’)
storePassword ‘…’
keyAlias = ‘…’
keyPassword ‘…’
}
}
Вопросы:
- Почему конфигурацию подписи необходимо записывать вручную в сборке script?
- Почему тип сборки
release
не требует явной настройки подписи, пока вы go не создадите подписанный APK? * - Учитывая, что
beta
должно быть точно как release
через initWith release
, почему поведение отличается, как показано выше?