Android 为什么自定义生成类型需要签名配置,而“release”不需要签名配置?
我有一个自定义构建类型Android 为什么自定义生成类型需要签名配置,而“release”不需要签名配置?,android,gradle,build.gradle,android-keystore,android-build-type,Android,Gradle,Build.gradle,Android Keystore,Android Build Type,我有一个自定义构建类型beta定义如下: buildTypes { debug { applicationIdSuffix
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
,人们希望beta具有release
的所有属性。但是,当尝试运行测试版时,Android Studio将显示以下错误
“当前所选变体的APK未签名…”
在项目设置中创建签名配置,选择它,然后点击“应用”似乎不起作用。相反,必须手动编写签名配置:
signingConfigs {
beta {
storeFile file(‘…’)
storePassword ‘…’
keyAlias = ‘…’
keyPassword ‘…’
}
}
问题:
release
build类型不需要显式签名配置,直到实际生成签名的APKbeta
应该与通过initWith release
发布的release
完全相同,为什么上述行为会有所不同