Android反编译简单教程

2.使用工具

apktool(资源文件获取) 下载地址: https://download.csdn.net/download/vipzjyno1/7025111

dex2jar(源码文件获取)下载地址: https://download.csdn.net/download/yanzi1225627/7728447

jd-gui(源码查看器) 下载地址:https://code.google.com/archive/p/innlab/downloads (官方)

3.反编译流程

1.apk反编译得到程序的源代码、图片、XML配置、语言资源等文件
将下载的apktool压缩包解压会有 aapt.exe、apktool.bat、apktool.jar三个文件
将需要进行反编译的安装包放入该文件夹下
打开命令行界面(运行-CMD),找到apktool文件夹,输入命令:apktool.bat d -f gistar.apk gistar


Android反编译简单教程_第1张图片
image.png

(命令中gistar.apk指的是要反编译的APK文件全名,test为反编译后资源文件存放的目录名称,即为:apktool.bat d -f [apk文件 ] [输出文件夹])

2.APK反编译得到源码
将要反编译的APK后缀名改为.rar或则 .zip,并解压,得到其中的额classes.dex文件(它就是java文件编译再通过dx工具打包而成的),将获取到的classes.dex放到之前解压出来的工具dex2jar-0.0.9.15 文件夹内,
在命令行下定位到dex2jar.bat所在目录,输入dex2jar.bat classes.dex,效果如下:


Android反编译简单教程_第2张图片
image.png

在改目录下会生成一个classes_dex2jar.jar的文件,然后打开工具jd-gui文件夹里的jd-gui.exe,之后用该工具打开之前生成的classes_dex2jar.jar文件,便可以看到源码了,效果如下:


Android反编译简单教程_第3张图片
image.png

被混淆过的效果图(类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名):

Android反编译简单教程_第4张图片
image

[Mac版反编译链接]https://www.jianshu.com/p/3a305f32c4a3(转载)
[Mac版反编译加固APK]https://www.jianshu.com/p/799ac26162f2 (实测有效)

作为一个开发者,如果不想自己代码被别人轻易使用,那么就需要添加混淆了。

你可能感兴趣的:(Android反编译简单教程)