Android.apk - 解包、打包、签名(apktool、jarsigner、keystore)

目录

-查看apk信息(自行修改后的apktool)
-解apk包(apktool)
-反编译打包成apk(apktool)
-制作签名文件keystore(Mac下制作)
-apk签名(jarsigner)

查看apk信息(自行修改后的apktool)

#######下载apk相关文件,放到指定的目录下,如已经存在则替换。
apktool替换文件下载

apktool-location.png

#######apktool的使用

apktool.png

apktool是我们对apk包进行反编译最常见的工具。图中红框内的命令是我和同事对apktool进行改造后新增的方法命令。

查询命令格式:

apktool info apk包路径

info后带有可选参数,可查询具体指明的某个属性

查询事例


apktool-query.png

修改命令格式:

cd 到修改apk包后新包需要存放的地方(也就是新包会保存在当前目录)
apktool m 修改项  要修改的内容 apk包 

修改事例:

apktool-modify.png

回车之后:

apktool-modify-result.png

签名命令格式:

apktool sign apk包

签名使用的keystore是我们自己生成的,已经打进apktool.jar文件中。

签名事例:

apktool-sign.png

解apk包(apktool)

#解压 apk包
apktool d -f Android.apk(绝对路径)

另外一种方法就是,直接修改apk包后缀为.zip,然后双击加压,若失败,则可在终端unzip强制解包。

反编译打包成apk(apktool)

#打包 apk包,把解压的apk包做成一个apk
apktool b file(解压后的文件夹)

制作签名文件keystore(Mac下制作)

keytool工具的详细介绍

终端命令截图:

keystore.png
keystore-result.png

apk签名(jarsigner)

签名使用jarsigner

$1:keystore文件的绝对路径
$2:keystore的别名
$3:keystore文件的密码
$4:新的apk包名
$5:要签名的apk包路径

jarsigner -keystore $1 -storepass $3 -signedjar $4 $5 $2 -digestalg SHA1 -sigalg

//签名例子
jarsigner -keystore ~/appgame.keystore -storepass 123456 -signedjar  fastened_uc_new.apk QMDLH.apk android.keystore -digestalg SHA1 -sigalg MD5withRSA
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容