mac android apk反編譯
在mac os系統上反編譯android apk,首先需要準備好以下3個檔案:
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(可能下載的不是這個名稱可以修改一下),apktool.txt需要另儲存名稱為apktool(不需要sh和txt字尾)可以執行以下命令:
touch apktool
cat apktool.txt >> apktool就行
然後將shell指令碼apktool和apktool.jar移到/usr/local/bin資料夾下
sudo -s
mv 原始檔 /usr/local/bin
然後執行apktool -v命令:如出現以下提示就說明成功了
2、dex2jar和jd-gui解壓即可;
3、執行命令apktool d apk檔案:如
以下是生成的資料夾:
這個資料夾下可以看到apk中的資原始檔,如圖片,xml檔案等等,如果你只需要獲取圖片等資原始檔那麼到這裡就可以了,若要進一步獲取java程式碼的話就需要用到dex2jar和jd-gui工具了
1、要獲取java程式碼的話就要進行回編譯(apktoo可以進行反編譯和回編譯),主要就是獲取classex.dex檔案。
執行命令:apktool b 反編譯生成的資料夾
如:
會生成build資料夾:如
其中classes.dex檔案就是我們所需要的了,不同的apk會生成不同數量的classes.dex檔案,看大小和拆分了。
2、現在要用到我們的dex2jar這個工具了
d2j-dex2jar.sh和d2j_invoke.sh新增執行許可權:
chmod +x d2j-dex2jar.sh
chmod +x d2j_invoke.sh
然後執行命令./d2j-dex2jar.sh apk,如
之後可以在dex2jar資料夾中看到classes-dex2jar.jar檔案,這個就是最終的java檔案,那麼我們怎麼看呢,這就要用到我們下載的jd-gui了
3、開啟jd-gui工具,將classes-dex2jar.jar拖入即可,如下所示顯示:
終於完成了!!