Android O及以上版本:
获取该路径:
\build\make\target\product\security
下面的签名文件:
platform.x509.pem
platform.pk8
使用 signedjar (signapk.jar)文件给apk系统签名:
签名命令:
java -jar ****(拖拽上面的jar) platform.x509.pem platform.pk8 origin.apk(待签名apk文件) signed.apk(签名后的应用)
Android N及之前版本:
获取该路径:
\security\
下面的签名文件:
platform.x509.pem
platform.pk8
使用 signedjar (signapk.jar)文件给apk系统签名:
签名命令:
java -jar ****(拖拽上面的jar) platform.x509.pem platform.pk8 origin.apk(待签名apk文件) signed.apk(签名后的应用)
使用 platform.x509.pem platform.pk8 编译 jksStore文件
1、编译android源码
2、cd build/target/productty/
3、执行 openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem 生成platform.pem文件
4、执行 openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:huld123 -name huld
生成platform.p12文件,其中huld 为alias名(app添加签名要用到),huld123 为密码(密码可自定义)
5、执行 keytool -importkeystore -deststorepass huld123 -destkeystore platform.jks -srckeystore platform.p12 -srcstoretype PKCS12 -srcstorepass 123456
生成platform.jks (app打签名最终用到的文件),其中-deststorepass huld123设置的是这个签名的密码,上面指令中的-src*的其他参数都是从前面两个指令中生成的。
生成的jks文件
- 放到应用工程路径下
- 配置到gradle中
e.g.signingConfigs {
release {keyAlias 'gp_release'
keyPassword 'transsion'
storeFile file('../build_keys/***.jks')
storePassword 'transsion'
}