Android应用反编译详细流程(Mac系统)
新版Android应用反编译详细流程(Mac系统)
以前一直都是用win来反编译,后来换了Mac就一直没弄过了,今天刚好有需要,正好也做个笔记,留着以后备用。
其实现在大多数应用都会做一些防护,下面这种方式,只适用于一般的没做加固处理的apk。
现在开始吧,首先你需要准备好必备的软件
其实反编译并没有过多的内容,主要的时间都是花在环境的搭建上。如果你只是用一次的话,其实也不用过于花费时间去配置。(不知道为啥大家的文章基本都写了配置到环境变量中,应该是为了一劳永逸。)
如果你需要查看资源文件的话就需要配置apktool的环境,如果你只是要查看应用的代码直接逆向classes.dex文件就可以了,按自己的需要去配置相关工具。
配置apktool的步骤:
在使用apktool之前,你需要有jdk环境,这个很重要
1.将apktool文件的路径配置到环境变量中,为了更方便的使用apktool来进行逆向操作。如果你懒得配置,你也可以直接进入到apktool.jar所在的的目录下执行命令:
bogon:apktool dongfang$ apktool d /Users/dongfang/Downloads/com.xxxx.apk
这样就会对应生成一个和包名近似一致文件夹,里面有资源文件,如:xml、AndroidManifest.xml等文件。
以上就是逆向完成了,对生成的文件夹还可以在重新打包成apk,但是不建议这样做。
使用dex2jar步骤:
1.首先你需要先把apk中dex文件提取出来,放到dex2jar文件夹内。(如果不放到根目录的话,就要写全路径)
2.执行一个命令就可以了。
sh d2j-dex2jar.sh classes.dex
然后就会生成一个jar文件了,文件名是classes-dex2jar.jar
使用jd-gui来查看jar的步骤:
1.直接将上面生成的jar文件拖进来就可以了啊。