使用dex2jar和jd-gui和apktool反編譯一個apk

  1. dex2ja:用來反編譯apkhtml

    jd-gui:把反編譯生成的jar變成java語言java

    apktool:反編譯生成xmlgit

     

    將要反編譯的APK後綴名改成.rar或 .zip,並解壓github

    怎麼用dex2jar反編譯一個apk
  2. 2

    獲得其中的classes.dex文件(它就是java文件編譯再經過dx工具打包而成的),將獲取到的classes.dex放到以前解壓出來的工具dex2jar-0.0.9.15 文件夾內windows

    怎麼用dex2jar反編譯一個apk
  3. 3

    在命令行下定位到dex2jar.bat所在目錄,輸入d2j-dex2jar.bat   classes.dex。app

    效果以下:工具

     

    怎麼用dex2jar反編譯一個apk
  4. 4

    在該目錄下會生成一個classes_dex2jar.jar的文件,而後打開工具jd-gui文件夾裏的jd-gui.exe,以後用該工具打開以前生成的classes_dex2jar.jar文件,即可以看到源碼了,效果以下:ui

    怎麼用dex2jar反編譯一個apk
  5. 5

    被混淆過的效果圖(類文件名稱以及裏面的方法名稱都會以a,b,c....之類的樣式命名):spa

    怎麼用dex2jar反編譯一個apk
  6.  

 

 

apktool  .net

     做用:主要查看res文件下xml文件、AndroidManifest.xml和圖片。(注意:若是直接解壓.apk文件,xml文件打開所有是亂碼)

dex2jar

     做用:將apk反編譯成Java源碼(classes.dex轉化成jar文件)

jd-gui

     做用:查看APK中classes.dex轉化成出的jar文件,即源碼文件

新版本apktool用法:

一、下載:
 
 
固然了上面這個連接和圖片描述的可能也會變。
目前就是下載兩個文件apktool.bat和apktool.jar(這個若是你下載的文件有版本號,好比apktool_2.2.1.jar,就要更名字爲apktool.jar),
而後把上面兩個文件都放到C://Windows下面。(我是windows系統,其餘系統按照本身的來)
 
二、使用方法
 
 
官網教程
 
$ apktool d test.apk I: Using Apktool 2.2.1 on test.apk I: Loading resource table... I: Decoding AndroidManifest.xml with resources... I: Loading resource table from file: 1.apk I: Regular manifest package... I: Decoding file-resources... I: Decoding values */* XMLs... I: Baksmaling classes.dex... I: Copying assets and libs... I: Copying unknown files... I: Copying original files... $ apktool b test I: Using Apktool 2.2.1 on test I: Checking whether sources has changed... I: Smaling smali folder into classes.dex... I: Checking whether resources has changed... I: Building resources... I: Building apk file... I: Copying unknown files/dir... 
其實就是,運行CMD,進入好比app-release.apk所在目錄,而後運行apktool d app-release.apk就能夠了,默認解壓的文件就在app-release.apk所在目錄。
 
 

 

 

最後,若是我上面的方法不能用了,請看英文的原網頁怎麼說。

 

 

 

好比:

http://blog.csdn.net/vipzjyno1/article/details/21039349/#reply

 

dex2jar

     做用:將apk反編譯成Java源碼(classes.dex轉化成jar文件)

jd-gui

做用:查看APK中classes.dex轉化成出的jar文件,即源碼文件

 

Smali2JavaUI

對於博主說得,先dex2jar把classes.dex轉爲jar,再jd-gui把jar轉爲源碼*.java文件。
如今能夠用Smali2JavaUI這個軟件,一部到位。能夠把這兩個步驟化爲一個步驟。
 
因此,若是隻想反編譯看*.java文件的話,只用Smali2JavaUI軟件就能夠了。
這個軟件能夠直接打開***.apk文件,而後就直接看到*.java文件了。
Smali2JavaUI最新版本下載連接 http://www.hensence.com/cn/smali2java/#Download
 
http://blog.csdn.net/ysc123shift/article/details/52985435
相關文章
相關標籤/搜索