Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android 反編譯apk 到java源碼的方法

Android 反編譯apk 到java源碼的方法

編輯:Android開發實例

     Android由於其代碼是放在dalvik虛擬機上的托管代碼,所以能夠很容易的將其反編譯為我們可以識別的代碼。

        之前我寫過一篇文章反編譯Android的apk包到smali文件 然後再重新編譯簽名後打包實現篡改apk的功能。

見http://www.fengfly.com/plus/view-193318-1.html

        最近又有一種新的方法來實現直接從Android apk包裡的classes.dex文件,把dex碼反編譯到java的.class二進制碼,然後從.class二進制碼反編譯到java源碼想必就不用我來多說了吧。

        首先我們需要的工具是dex2jar和jd-gui

        其中第一個工具dex2jar是用來把classex.dex文件也就是dex二進制碼轉化為java的標准.class二進制碼,然後jd-gui是把標准的.class二進制碼再反編譯為java源碼。

        首先從apk包裡面提取出classes.dex

     放到dex2jar目錄下

       然後在命令行下執行

        dex2jar.bat classes.dex

        

    這時執行成功後會生成一個classes.dex.dex2jar.jar文件

    這個文件再用jd-gui打開,如下圖

    

     幾乎跟我自己寫的這個程序的源碼一樣

提供這個反編譯方法主要用於大家學習與研究,有問題可以與我郵件討論。

希望大家不要用這個方法從事惡意的活動,畢竟,別人辛辛苦苦寫程序也不容易,用這個方法可以大致的學習到別人寫的程序的邏輯,架構,希望對大家有所幫助

轉自: http://blog.csdn.net/Zengyangtech/archive/2010/10/26/5967263.aspx

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved