大家好,又见面了,我是你们的朋友全栈君。
参与的项目近期要求安全检测,apk不达标并且无法修复的话会要求使用官方加固包。加固之后的包签名会失效,所有需要重新进行签名。今天借此机会记录一下整个操作流程。
原来apk是使用jks格式的签名文件来操作的,还有一种是keystore文件格式。我们先来看jks文件格式怎么操作
一、jks格式操作步骤:
1、基本语法
jarsigner -digestalg SHA1 -sigalg SHA1withRSA -verbose -keystore {
签名文件} -storepass {
签名密码} -signedjar {
签名之后的包名} {
需要签名的apk} {
别名}
这里很多人说签名文件及需要签名的apk要使用绝对路径,经过测试发现使用相对路径也是可以的。
2、示例
#先进入目录,如D:\sign_test
cd D:\sign_test
#再敲入下面的签名指令,签名文件是sign.jks,apk包名sign_test_2.41.apk
jarsigner -digestalg SHA1 -sigalg SHA1withRSA -verbose -keystore ./sign.jks -storepass xxxx -signedjar sign_test_2.41_signed.apk ./sign_test_2.41.apk "sign app"
演示环境是Windows,在相同目录操作的,所以使用./xxx
;别名因为有空格所以使用了双引号。这里注意的是如果没有设置有效期的话会给出警告。
二、keystore格式操作步骤
1、基本语法
jarsigner -digestalg SHA1 -sigalg RSA -keystore {
keystore文件路径} -storepass {
keystore文件的密码} -signedjar {
新的apk包名} {
要签名的apk包路径} {
别名}
2、示例
#先进入目录,如D:\sign_test
cd D:\sign_test
#再敲入下面的签名指令,签名文件是sign.keystore,apk包名sign_test_2.41.apk
jarsigner -digestalg SHA1 -sigalg RSA -keystore ./sign.keystore -storepass xxxx -signedjar sign_test_2.41_signed.apk ./sign_test_2.41.apk "sign app"
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132570.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...