編輯: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
可以顯示在的Android任務,通過加載進度條的進展。進度條有兩種形狀。加載欄和加載微調(spinner)。在本章中,我們將討論微調(spinner)。Spinner 用
Android IMF(Input Method Framework)是自An
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個
在手機衛士之前的版本升級的對話框中: 有的用戶暫時不想更新,沒有點擊“稍後再說”,而是選擇點擊回退按鍵,那麼這時候的邏輯應