Android资源文件local.properties使用以及Gradle文件中的值、Manifests文件中的值
1、没有v1签名问题
从Android Studio项目中生成一个签名的apk,但是当同时启用签名方案v1和v2时,APK签名方案v1似乎不起作用,v1似乎失效了,apksigner -verify -v返回:
Verifies
Verified using v1 scheme (JAR signing): false
Verified using v2 scheme (APK Signature Scheme v2): true
Verified using v3 scheme (APK Signature Scheme v3): false
Number of signers: 1
可以单独使用v1或v2进行验证。
app支持的最低API级别太高minSdkVersion>=24(android 7), 只有minSdkVersion<=23(android 6),才支持v1签名。
注:只有v2签名的apk,包体中不含签名文件。只有v1签名或v1+v2签名的apk,包体中有签名文件CERT.SF、Cert.RSA
2、不同环境(sit/uat/prd)使用不同签名文件自动打包
2.1、在与app文件夹同级目录下添加3个文件:sitstore.properties, uatstore.properties, prdstore.properties
prdstore.properties
APP_KEY_ALIAS=testKey
APP_KEY_PASSWORD=test123456
APP_STORE_FILE=../keystore/testkey.keystore
APP_STORE_PASSWORD=test123456
2.2、配置build.gradle(app)
Properties keyProperties = new Properties()
android {
...
productFlavors {
sit {
...
keyProperties.load(project.rootProject.file('sitstore.properties').newDataInputStream())
}
uat {
...
keyProperties.load(project.rootProject.file('uatstore.properties').newDataInputStream())
}
prod {
...
keyProperties.load(project.rootProject.file('store.properties').newDataInputStream())
}
}
/**
* 签名信息
*/
signingConfigs {
config {
keyAlias keyProperties.getProperty("APP_KEY_ALIAS")
keyPassword keyProperties.getProperty("APP_KEY_PASSWORD")
storeFile file(keyProperties.getProperty("APP_STORE_FILE"))
storePassword keyProperties.getProperty("APP_STORE_PASSWORD")
}
}
/**
* 不同版本
*/
buildTypes {
release {
...
signingConfig signingConfigs.config
}
debug {
...
signingConfig signingConfigs.config
}
unsignedRelease {
...
signingConfig null
}
}
}
3、查看签名信息方法
jarsigner/apksigner详细使用方式
3.1、jarsigner
jarsigner -verbose -keystore keystore文件 -signedjar 签名以后的apk名称 要签名的apk keystore中的别名
只能查看含v1方式签名的apk
3.2、apksigner
apksigner sign --ks keystore位置 --v3-signing-enabled false apk位置
可以查看使用了v1v2v3哪种签名方案,无法查看签名文件信息
3.3、解压查看
(1)将apk解压
(2)找到META-INF 下的.RSA文件
(3)在控制台上输入命令:"keytool -printcert -file xxx.RSA",即可查看签名文件
keytool -printcert -file xxx.RSA
只能查看含v1方式签名的apk
相关链接
发表评论