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

(命令中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,效果如下:

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

被混淆过的效果图(类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名):
作为一个开发者,如果不想自己代码被别人轻易使用,那么就需要添加混淆了。
网友评论