android 反编译 重打包 对齐 重签名

需要用到的工具有apktool、jdx-gui、zipalign、apksigner

前提需要有java环境,最好jdk1.8以上

工具包下载:链接:https://pan.baidu.com/s/1pNalpHW1pighc4O65K1l3w 
提取码:abd8

一、反编译

将要解包的apk文件放到apktool.jar的同级目录下输入命令:

java -jar apktool.jar d -f target.apk -o outApk

像这样

编译完成后会在里面出现outApk的文件夹

二、查看、修改

打开上一步编译出来的文件,里面的结构像这样

我们可以修改res里的资源,布局解构等

smail文件主要涉及逻辑结构代码,不过比较类似汇编语言,这是可以利用jadx-gui工具打开单独smail文件或整个smail文件夹进行查看。

修改是可以利用id进行定位查找

三、重新打包

还是在apktool的同级目录下

输入命令:

java -jar apktool.jar b outApk

在这里空白处按住shift键和鼠标右键打开powershell

在outApk文件夹里的dist 文件夹里会生成apk

此时离成功已经不远了

四、对齐

如果没有 android studio需要下载一下,下载时会提示下载SDK ,在SDK->build-tool里会有zipalign.exe,把他复制到上一步的dist文件夹下

输入命令,还是一样空白处按住shift键和鼠标右键打开powershell:

zipalign -v 4 target.apk(目标apk) destination.apk(输出apk)    //对齐处理
zipalign -c -v 4 destination.apk  //检查对齐

五、签名

  • 生成签名

        输入命令,-alas表示别名,回车后按照提示填写即可,可以随便填:

keytool -genkey -alias mykey.keystore -keyalg RSA -validity 20000 -keystore mykey.keystore
  • 使用签名

        回到SDK->...->apksigner.jar,找到这个文件,把他复制到dist文件夹下

        输入命令:

java -jar apksigner.jar sign  --ks mykey.keystore  --ks-key-alias mykey.keystore  --ks-pass pass:123456  --key-pass pass:123456  --out myapp_signed.apk(最终生成apk文件)  destination.apk(目标apk)

这个也是咱百度的上述命令是v1,v2签名,为了使之能够在android11以上安装成功

下面是v1签名,下载javaJDK时自带的,只需输入命令,高版本android可能安装不上:

jarsigner -verbose -keystore mykey.keystore -signedjar myapp_signed.apk destination.apk mykey.keystore

至此大功告成!!!🎉🎉🎉

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值