本文主要是介绍RockChip主板系统签名说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
简介
线下设备使用的都是RockChip芯片的主板,我们要求最终运行的App都有系统权限,因此最终签名都会使用系统签名。之前都是打包完成之后再手动签名,现改成打包的时候直接使用RockChip的签名。
操作
手动签名
先生成apk,然后使用 signapk.jar
签名:
java -jar signapk.jar platform.x509.pem platform.pk8 in.apk out.apk
Gradle签名
task ttdevs(type: Exec) {String apkPath = "${rootProject.projectDir}/app/build/outputs/apk/"String signPath = "${rootProject.projectDir}/"file(apkPath).listFiles(new FileFilter() {@Overrideboolean accept(File file) {return file.name.endsWith(".apk") && !file.name.startsWith("signed")}}).each { File file ->// println file.path = file.parent + file.namecommandLine "java", "-jar", "${signPath}/signapk.jar","${signPath}/platform.x509.pem","${signPath}/platform.pk8","${file.path}","${file.parent}/signed_${file.name}"}
}
系统签名
sh keytool-importkeypair.sh -k rockchip.jks -pk8 platform.pk8 -cert platform.x509.pem -alias rockchip -p rockchip
- k: 生成的 keystore 文件
- pk8: 要导入的 platform.pk8 文件
- cert: 要导入的 platform.x509.pem 文件
- alias 生成的 keystore 的 alias
- p: 生成的 keystore 文件的密码
在 build.gradle
中使用上面生成的 rockchip.jks
:
android {...signingConfigs {rockchip {keyAlias 'rockchip'keyPassword 'rockchip'storeFile file('rockchip.jks')storePassword 'rockchip'}}...
}
查看签名信息
Android studio
Gradle > app > Tasks > android > signingReport
查看apk的签名
解压apk,找到
META-INF/CERT.RSA
,执行:keytool -printcert -file META-INF/CERT.RSA
文件列表
platform.pk8
MD5:
67c8896ff5995a62ef31e60436ef129e
platform.x509.pem
MD5:
5bf3063021a4e4cfa8203e1cb2bf9f4f
keytool-importkeypair.sh
添加可执行权限:
chmod +x keytool-importkeypair.sh
工具下载地址:https://github.com/getfatday/keytool-importkeypair
rockchip.jks
签名文件的MD5: 7ba48fc279bcae59f7005310ae8c5aea
签名信息:
Alias: rockchip
MD5: 0E:BA:50:A4:5C:15:B3:5D:97:7D:04:D8:43:79:B3:55
SHA1: 41:79:1C:9B:8F:AF:15:E1:AC:D5:AA:F5:92:10:FD:42:46:7D:82:77
Valid until: Saturday, May 10, 2042
这篇关于RockChip主板系统签名说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!