前言
反編譯別人的程序不是什麼值得炫耀的事,希望大家最好只是興趣探索,而不是利益驅動。
什麼是反編譯
我們知道,Android的程序打包後會生成一個APK文件,這個文件可以直接安裝到任何Android手機上,因此,反編譯就是對這個APK進行反編譯。
一、dex2jar
dex2jar可以將編譯的.dex文件反編譯成.jar,方便我們直接瀏覽代碼,及其方便。
使用教程:
'確保已安裝配置好java環境 '首先進入到dex2jar所在的目錄,然後執行cmd命令 d2j-dex2jar.bat class.dex
等待編譯好後會發現同目錄下會多出dex2_jar.jar,那就是反編譯後的jar文件。
de2jar下載:dex2jar.zip
二、jadx-gui
jadx-gui下載:jadx-gui.zip
使用:下載解壓後,進入bin目錄,雙擊運行jadx-gui.bat,然後會彈出一個窗口,將需要反編譯的.apk文件拖入進窗口。就可以看到整個apk的源碼了,包括res資源和java代碼。
三、apktool
apktool下載:https://softpedia-secure-download.com/dl/d109c53aba7ce852df5052cfb51ef0fa/5ac9c247/100207518/software/programming/apktool_2.3.1.jar
使用:
'進入cmd 進入apktool所在文件夾 '運行cmd命令 '確保已經安裝了java環境 java -jar apktool.jar d xxx.apk -o test '這樣會將同目錄下的xxx.apk反編譯到test目錄下
回編譯:
java -jar apktool.jar b test