當前位置:編程學習大全網 - 熱門推薦 - 如何反編譯apk文件得到源碼和XML文件

如何反編譯apk文件得到源碼和XML文件

1.下載反編譯工具

需要下載四個工具:dex2jar、JD-GUI、apktool、apktool-install-windows-r05-ibot

dex2jar:將apk中的classes.dex轉化成Jar文件。

JD-GUI:反編譯工具,可以直接查看Jar包的源代碼。

apktool:反編譯工具,通過反編譯APK中XML文件,直接可以查看。

apktool-install-windows-r05-ibot:輔助windows批處理工具。

2.解壓縮APK包

apk文件也是壹種常見的zip,常用的壓縮軟件就可輕松地解壓apk文件。用壓縮軟件將apk文件中的文件解壓到壹個文件夾中,得到APK中的資源包括XML文件和classes.dex文件,classes.dex就是java文件編譯再通過dx工具打包而成的。

 

3.反編譯dex文件

解壓apk文件後,妳會發現res目錄的圖片沒有加密,但java源碼編譯成了壹個classes.dex文件,無法用普通的反編譯class文件的方法來處理,dex2jar可以將dex文件轉換成普通的jar包。

解壓下載的dex2jar,把解壓後的文件夾放到系統盤跟目錄中並把這個目錄加到系統path變量中,就可以直接用:dex2jar.bat或dex2jar.sh轉換dex文件了。

DOS行命令如下:dex2jar.bat xx\classes.dex(xx是classes.dex文件所在的路徑)。

將在同目錄得到普通jar包:classes_dex2jar.jar,就可以用處理普通jar包的方法來反編譯這個jar包得到原文件。

編譯截圖:

 

4.反編譯jar包

得到jar包後,下載自已喜歡的反編譯工具,推薦使用JD-GUI,有比較簡單的圖形界面,可以反編譯單個class文件,也可以反編譯jar包,比較方便。

打開壓縮文件JD-GUI,運行jd-gui.exe,打開上面生成的jar包,即可看到源代碼了。

截圖如下:

5.反編譯xml文件

打開解壓的res\layout目錄,有很多xml文件,如果妳想看下作者是如何設計界面的,妳會很失望,因為妳看到的是壹大堆亂碼!這個時候我們需要用到的是apktool。

具體操作方法:將下載的apktool和apktool-install-windows-r05-ibot兩個包解壓到同壹個文件夾下,這個文件夾有三個文件:aapt.exe,apktool.bat,apktool.jar。把這個文件夾也放到系統盤的根目錄中並把這個目錄加到path變量中。以HelloWord.apk為例:

在DOS命令行中輸入:apktool d xx\HelloWord.apk HelloWord得到HelloWord文件夾,此文件夾中的xml文件就是編譯好的可以正常查看的文件。

 

 

這樣就得到了可以得到編譯的源碼和XML資源。

註意:文件的路徑中最好不要出現中文!

  • 上一篇:黑暗中的觸摸
  • 下一篇:像火花像蝴蝶 電視劇 是誰主演的?在哪裏可以看?
  • copyright 2024編程學習大全網