Android apk文件的重新打包与签名

第一步:解包APK文件

# apktool d app.apk

第二步:打包APK文件

# apktool b app

第三步:重新签名

# jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore  mysign.keystore app.apk mysign

或# jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA256 -keystore  mysign.keystore app.apk mysign

第四步:验证你的apk签名

# jarsigner -verify -verbose -certs app.apk

第五步:使用zipalign来对齐apk包(可选)

$ zipalign -v 4 app-unaligned.apk app.apk

 zipalign 确保所有的未压缩数据与特定字节对齐相对于文件,从而降低apk文件的大小。

 

工具使用说明:

1、生成签名的方法

# keytool -genkey -v -keystore mysign.keystore -alias mysign -keyalg RSA -keysize 2048 -validity 10000

-keystore:存放路径 (mysign.keystore

-alias:别名(mysign

-validity :过期时间(10000天)

2jarsigner的命令格式

jarsigner -verbose -keystore [您的私钥存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]

3、apktool使用

解包apktool d  [apk文件路径]

打包apktool b  [android项目文件目录]

 

谢谢您的来访,欢迎关注交流!以下是我的个人联系方式
电子邮箱:spring.wind2006@163.com,QQ:402085437,微信号:tm402085437

原文地址:https://www.cnblogs.com/springwind2006/p/15581663.html