apktool的基本语法为:
{your path}/sh apktool.sh d {your path}/food.apk
然后我们会在apktool.sh的目录下看到一个food文件夹,然后这里就包含了所有的资源文件。其中/res/values/public.xml中包含我们定义的各种ID资源。
下载地址:最基本的语法:
{your path}/sh dex2jar.sh {your path}/classes.dex
这样我们就可以在classed.dex的目录下看到classes_dex2jar.jar,然后就可以使用JD-GUI打开了。
classes.dex是我们从APK中解压出来的文件。初始目录如下:
$ sh apktools/apktool.sh d food.apk // 在当前目录下生成一个food文件夹,里面为提取的资源文件 $ unzip -od tmpfood food.apk // 在当前目录下生成一个tmpfood文件夹,里面为解压APK得到的文件 $ sh dex2jar-0.0.9.15/dex2jar.sh tmpfood/classes.dex // 在tmpfood目录下生成一个classes_dex2jar.jar文件,这个文件就是得到的源码文件
最终得到的文件如下:
查看我们的得到的jar文件:
#!/bin/bash echo 开始反编译$@ fullPath=$@ filePath=${fullPath%'.apk'} echo 开始提取资源文件... #sh apktools/apktool.sh -f d $@ java -Xmx512M -Djava.awt.headless=true -jar apktools/apktool.jar -f d -o "${filePath}" $@ echo 开始解压classes.dex... unzip -od "${filePath}" $@ classes.dex echo 开始反编译classes.dex为classes_dex2jar.jar... sh dex2jar/d2j-dex2jar.sh "${filePath}/classes.dex" -f -o "${filePath}/classes.jar" echo 恭喜,反编译完成,请到${filePath}目录下查看
资源下载:
http://download.csdn.net/detail/ttdevs/8317793