java反编译工具

在网上找了很多的反编译工具,各个工具并不是完全能编译成功,东拼西凑了很多,总结一下。

1、jadx             下载地址:https://github.com/skylot/jadx/

反编译功能强大,支持的反编译文件类型较多,apk、dex、jar、class、zip、aar等文件进行反编译都可以。jadx操作方便,图形化界面,下载后解压打开导入apk文件即可,无需其它设置。但是它是我目前使用过的最慢的反编译工具,电脑配置不行的不建议使用,卡!

以下是反编译了一个apk,能获取源码和资源布局文件,部分dex文件获取不到,可以用dex2jar工具将dex文件反编译成jar文件,再配合jd-gui工具反编译Jar文件,就可以获取到源码了!

2、apktool

支持Android   apk反编译,能从apk中提取图片和布局资源,源码不能获取。尝试用dex2jar工具将可运行文件classes.dex反编译为jar源码文件。最后再配合jd-gui查看java源码。

 

使用方法:下载apktool后,打开cmd, 进入到apktool_x.x.x.jar文件目录。

反编译:Java -jar apktool_xx.jar d -f  编译的apk  [-o 反编译后的apk]

//[]括号为可选参数,apktool_xx.jar中的xx对应自己下载工具的版本号。

回编译:Java -jar apktool_xx.jar b 反编译后的apk -o 回编译后生成的apk路径

获取源码需要先把apk文件变成zip文件,然后再解压,这里的资源文件是乱码。主要是为了获取到dex文件,如果有的apk有库文件(.so)可以通过这种方式获取。


下载dex2jar

将dex转换成jar文件

下载jd-gui

反编译jar源码文件,jd-gui也可以反编译class字节码文件,直接下载解压导入jar文件运行即可获取源码。

除此之外,jd-gun它支持Windows、Linux和苹果Mac Os三个平台。而且提供了Eclipse的插件JD-Eclipse、IntelliJ的插件JD-IntelliJ。

 

apk签名:jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore  签名文件路径  -signedjar  签名后的apk路径  签名的apk路径  签名文件名称

生成R文件:aapt package -m -J  生成R文件的路径 -S  apk中的res的路径 -I  adt中android.jar路径 -M  AndroidManifest.xml路径
 

参考链接:

https://blog.csdn.net/yannqi/article/details/80847354

https://blog.csdn.net/u012811342/article/details/72934477

https://blog.csdn.net/dreamer2020/article/details/52761606

https://blog.csdn.net/guolin_blog/article/details/49738023

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值