如何解决带有多种风味的android sign app问题
我尝试进行自动应用签名。我已经通过命令生成了密钥:
keytool -genkey -v -keystore app/app_keystore.keystore -alias demo -keyalg RSA -keysize 2048 -validity 10000
keytool -genkey -v -keystore app/app_keystore.keystore -alias release -keyalg RSA -keysize 2048 -validity 10000
我还为我的Android应用准备了build.gradle:
def keystorePropertiesFile = rootProject.file("keystore.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android {
compileSdkVersion 30
buildToolsVersion "30.0.0"
signingConfigs {
demo {
try {
keyAlias keystoreProperties['demoAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
} catch (ignored) {
throw new InvalidUserDataException("Bad credentials")
}
}
release {
try {
keyAlias keystoreProperties['releaseAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
} catch (ignored) {
throw new InvalidUserDataException("Bad credentials")
}
}
}
defaultConfig {
applicationId "com.company.app"
minSdkVersion 26
targetSdkVersion 30
versionCode mVersionCode
versionName mVersionName
setProperty("archivesBaseName","app_v$versionName")
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
flavorDimensions "server"
productFlavors {
demo {
dimension "server"
versionName "${mVersionName}.demo"
signingConfig signingConfigs.demo
}
release {
dimension "server"
versionName "${mVersionName}.release"
signingConfig signingConfigs.release
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
}
}
这些配置应返回带有证书的应用程序,但是当我通过命令检查应用程序证书时:
find . -name "*.apk" -exec echo "APK: {}" \; -exec sh -c 'keytool -printcert -jarfile "{}"' \;
我有
Not a signed jar file
。
我通过命令构建应用
./gradlew assembleDemoRelease assembleReleaseRelease
应用似乎没有证书。当我更改属性中的密码时,我会遇到错误-因此会对生成证书进行评估。 请帮助我创建签名的应用程序。谢谢。
Blockquote
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。