赞
踩
技术是一个需要不断学习和积累的过程,除了研究底层源码以外,有时候借鉴别人的代码也是学习的一部分;今天介绍一款好用的反编译软件----jadx;记录自己的学习历程;
首先,我找到了dex2jar、apktool、jd-gui;这三种配合使用也可以完成反编译;但是步骤繁琐,使用的工具也麻烦;
而jadx只需要一步到位,而且图形化界面,找代码的话也很方便。
安装
jadx在github上开源了,所以我们可以直接去下载了
https://github.com/skylot/jadx
点击进行下载,也给大家准备了现成的,大家可以自行下载
https://download.csdn.net/download/upuprita/11060376
下载完解压后可以看到如下目录
进入bin目录下,双击jadx-gui.bat即可运行
简单使用
单击左上角文件目录-->打开-->选择你要反编译的apk文件
即可看到对应的资源和大部分逻辑代码。
全局查找
Ctrl+Shift+F
查找类
jadx可以在应用它的类中跳转到他的主类中
按住Ctrl,鼠标移动到要跳转的类名字上,左键单击跳转
反混淆
我们在打包的时候都会对apk进行混淆,但是我们在阅读代码的时候被混淆后的代码的类名都是用abc命名的,这样使我们的阅读体验非常不好,所以,在这里,jadx还帮助我们反混淆,虽然有些名字反混淆后还是不规范,但是为我们理解代码提供了很大的帮助,操作办法:工具-->反混淆
反混淆前:
反混淆后:
导出Gradle文件
jadx中操作代码始终没有在编辑器中方便,jadx考虑到这一点,故提供了可以将项目导出成gradle文件:文件-->另存为Gradle项目,导出后
src目录下main下:
可以看到资源文件、清单列表、等大部分代码。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。