首先下载三个工具 apktool ,dex2jar,jd-gui
下载地址分别如下
apktool :https://ibotpeaches.github.io/Apktool/install/
dex2jar :https://sourceforge.net/projects/dex2jar/
jd-gui:http://jd.benow.ca/
如果没法下载的我打包好了,下载地址 但不一定是最新版的,可以正常使用
第一步
先用 apktool 解压 .apk文件来查看apk包内的资源文件,直接解压会导致layout等资源文件无法看到
解压命令如下
apktool d aa.apk -o User/Mike/Downloads/1.apk
d是固定参数 aa.apk是你下载的apk文件名
不加 -o 会让你找不到输出的文件路径,不建议这么做
中途可能会遇到apktool 的 /usr/local/bin/apktool: Permission denied 问题
使用
sudo chmod +x /usr/local/bin/apktool
可解决,如非必要可以不加 sudo
apktool不会用的话可以去前面下载地址看教程,我这里就不细说了
第二步
使用 dex2jar 反编译 aa.apk
首先先解压dex2jar.zip,将 aa.apk放到 dex2jar文件夹里(或者直接将路径写进下面命令里去),然后在命令行下进入到 dex2jar文件夹里
sh d2j-dex2jar.sh aa.apk
这一步可能会报 d2j-dex2jar.sh: line 36: ./d2j_invoke.sh: Permission denied 错误
用以下命令来修改为可执行权限
sudo chmod +x d2j_invoke.sh
第三步
使用 jd-gui 来打开生成的.jar文件即可看到jave项目源代码
附:
apktool脚本配置方法
Installation for Apktool
- Windows:
- Download Windows wrapper script (Right click, Save Link As
apktool.bat
) - Download apktool-2 (find newest here)
- Rename downloaded jar to
apktool.jar
- Move both files (
apktool.jar
&apktool.bat
) to your Windows directory (UsuallyC://Windows
) - If you do not have access to
C://Windows
, you may place the two files anywhere then add that directory to your Environment Variables System PATH variable. - Try running apktool via command prompt
- Download Windows wrapper script (Right click, Save Link As
- Linux:
- Download Linux wrapper script (Right click, Save Link As
apktool
) - Download apktool-2 (find newest here)
- Rename downloaded jar to
apktool.jar
- Move both files (
apktool.jar
&apktool
) to/usr/local/bin
(root needed) - Make sure both files are executable (
chmod +x
) - Try running apktool via cli
- Download Linux wrapper script (Right click, Save Link As
- Mac OS X:
- Download Mac wrapper script (Right click, Save Link As
apktool
) - Download apktool-2 (find newest here)
- Rename downloaded jar to
apktool.jar
- Move both files (
apktool.jar
&apktool
) to/usr/local/bin
(root needed) - Make sure both files are executable (
chmod +x
) - Try running apktool via cli
- Download Mac wrapper script (Right click, Save Link As
Note - Wrapper scripts are not needed, but helpful so you don’t have to type java -jar apktool.jar over and over.