在mac os系統(tǒng)上反編譯android apk衔沼,首先需要準(zhǔn)備好以下3個(gè)文件:
1邓尤、apktool:https://ibotpeaches.github.io/Apktool/install/ ?
2眷昆、dex2jar:https://github.com/pxb1988/dex2jar?
3锭碳、jd-gui:http://jd.benow.ca
在mac os系統(tǒng)上反編譯android apk蹭秋,首先需要準(zhǔn)備好以下3個(gè)文件:
1、apktool:https://ibotpeaches.github.io/Apktool/install/ ?
2校套、dex2jar:https://github.com/pxb1988/dex2jar?
3、jd-gui:http://jd.benow.ca
下載好后牧抵,就可以開始我們的反編譯之路了:
1笛匙、安裝apktool:將下載的apktool.jar和apktool.txt(可能下載的不是這個(gè)名稱可以修改一下),apktool.txt需要另保存名稱為apktool(不需要sh和txt后綴)可以執(zhí)行以下命令:
touch apktool
cat apktool.txt >> apktool就行
然后將shell腳本apktool和apktool.jar移到/usr/local/bin文件夾下
sudo -s
mv 源文件 /usr/local/bin
然后執(zhí)行apktool -v命令:如出現(xiàn)以下提示就說明成功了
如果出現(xiàn)權(quán)限不夠?
chmod 777 apktool.jar
chmod 777?apktool
2犀变、dex2jar和jd-gui解壓即可妹孙;
3、執(zhí)行命令apktool d apk文件:如
以下是生成的文件夾:
這個(gè)文件夾下可以看到apk中的資源文件获枝,如圖片蠢正,xml文件等等,如果你只需要獲取圖片等資源文件那么到這里就可以了省店,若要進(jìn)一步獲取java代碼的話就需要用到dex2jar和jd-gui工具了
1嚣崭、要獲取java代碼的話就要進(jìn)行回編譯(apktoo可以進(jìn)行反編譯和回編譯),主要就是獲取classex.dex文件萨西。
運(yùn)行命令:apktool b 反編譯生成的文件夾
如:
會(huì)生成build文件夾:如
其中classes.dex文件就是我們所需要的了有鹿,不同的apk會(huì)生成不同數(shù)量的classes.dex文件,看大小和拆分了谎脯。
2葱跋、現(xiàn)在要用到我們的dex2jar這個(gè)工具了
d2j-dex2jar.sh和d2j_invoke.sh添加運(yùn)行權(quán)限:
chmod +x?d2j-dex2jar.sh
chmod +x?d2j_invoke.sh
然后運(yùn)行命令./d2j-dex2jar.sh apk,如
之后可以在dex2jar文件夾中看到classes-dex2jar.jar文件,這個(gè)就是最終的java文件娱俺,那么我們?cè)趺纯茨厣晕叮@就要用到我們下載的jd-gui了
3、打開jd-gui工具荠卷,將classes-dex2jar.jar拖入即可模庐,如下所示顯示: