apkTool下载地址: https://bitbucket.org/iBotPeaches/apktool/downloads/
链接:http://pan.baidu.com/s/1jH7CSn0 密码:cjc4
1.使用apktool反编译出apk的资源文件及smali中间文件,需要用到apktool的脚本及apktool.jar包
./apktool d xxx.apk
会在目录下生成xxx文件夹,里边的AndroidManifest.xml及资源文件可直接打开查看, 但是java
文件被反编译成.smali文件,只能看到大概的方法,具体方法无法看出;
2.需要使用dex2jar工具将apk中dex文件提取并反编译成jar包
./dex2jar-0.0.9.15/dex2jar.sh xxx.apk或者./dex2jar-0.0.9.15/d2j-dex2jar.sh xxx.apk
会在目录下生成xxx.jar包,但是jar包也是无法直接查看的,因为里边是编译生成的.class文件;
3.需要使用jd-gui工具来查看jar包(查看jar包的工具很多,比如android Studio等IDE工具都可查看)
打开jd-gui工具,打开Step2中反编译的jar包,即可查看具体的方法
另外,使用apktool还可以将Step1中反编译出来的文件重新打包回去,比如修改一些资源文件后重新打包成apk
./apktool b xxx 此处的xxx指Step1中反编译出的文件夹,会在xxx文件夹下的dist目录下生成新的xxx.apk文件
注意,一旦Step1中的apktool反编译时出现报错,请下载最新的apktool.jar,然后将apktool.sh这个脚本中的jarfile=apktool_2.2.0.jar 替换成新版本jar包名称即可