APK的反编译和重新编译

jar包准备工作:

apktool-xx.jar

signapk-xx.jar

参考:http://www.oschina.net/question/54100_33457

http://www.itnose.net/detail/6168594.html


1.完整反编译apk命令:

java -jar apktool\apktool-1.25.jar d -r myApp.apk

如果只是部分反编译

java -jar apktool\apktool-1.25.jar d  myApp.apk

如果你配置了java jdk的环境变量,那么这条命令可以这样

apktool\apktool-1.25.jar d -r myApp.apk


在反编译完成后,我们可以得到apktool.yml和public.xml


①这条命令运行的条件是在apktool-xx.jar包同一目录下存在appt.exe,或者你可以将appt.exe设置为环境变量。

appt.exe从在与你的android sdk目录下的/build-tools/android-xx/ 目录下


②重新打包编译可能会发生如下异常,说明你的命令参数缺少 -r命令,因此 -r是必须的

Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
otExist: apktool.yml
        at brut.androlib.Androlib.readMetaFile(Unknown Source)
        at brut.androlib.Androlib.build(Unknown Source)
        at brut.androlib.Androlib.build(Unknown Source)
        at brut.apktool.Main.cmdBuild(Unknown Source)
        at brut.apktool.Main.main(Unknown Source)
Caused by: brut.directory.PathNotExist: apktool.yml
        at brut.directory.AbstractDirectory.getFileInput(Unknown Source)
        ... 5 more


2.重新打包编译被反编译的apk

java -jar apktool\apktool-1.25.jar b myApp copyMyApp.apk


3.给apk签名

signapk-xx.jar,具体命令太多,建议使用第三方工具进行签名

转载于:https://my.oschina.net/ososchina/blog/358867

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值