Ubuntu(Linux)/Windows下反編譯apk

Ubuntu(linux)下反編譯apk,五部曲:

Ubuntu(Linux)下反編譯apk工具(apktool)下載

1 . 把apk拷到apktool根目錄下,執行:./apktool d xxx.apk,會生成xxx目錄,裏面有res目錄(各種資源文件),smali目錄(類似src目錄,裏面文件的語法不一樣)及AndroidManifest.xml。

[*.apk->*.jar: sh ./dex2jar/dex2jar.sh xxx.apk,生成xxx_dex2jar.jar通過jd-linux看源碼,Linux Java-Decompiler下載]

2 . 什麼apk漢化啊,就到res/values裏string.xml裏修改字符串,或者拷貝一份values目錄改爲values-zh-rCN,再去裏面修改string.xml裏英文字符串改爲中文,所謂的漢化就是這麼簡單。另外,有些圖片裏不是中文的得去改圖片,那得用Photoshop了,圖片也不能亂改,格式,圖片大小(尺寸)得原來的。

3 . 修改smali文件,這個有些難度。比如有些apk安裝了後要積分什麼的,比如大於100纔可以用的,其實這個值是用SharedPreference存放的,也就是存在xml裏,,位置:/data/data/[包名]/shared_prefs的某個xml裏,文件不多肯定是可以找到的。另外一種方法就是修改.smali文件也可以達到這目的,軟件實現肯定是讀取積分那個值給它修改一下就可以了,例如 const/16 v0 100  (其實就是 v0 = 100)這個語法有點像彙編,覺得還是比彙編簡單,v0 v1 ...是寄存器,之前會跟變量關聯的。具體的還是自己看看smali語法。

4 . 打包生成apk,執行:./apktool b xxx,會在xxx裏面生成,一個dist目錄,裏面就是xxx.apk,但不能安裝滴,提示(Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]),沒有給這個apk簽名,

5 . 簽名,執行:sh ./dex2jar/d2j-apk-sign.sh ./xxx/dist/xxx.apk 就是給剛纔那個apk簽名,生成的文件還是xxx.apk在apktool根目錄下。這樣就大功告成啦。


Windows 下反編譯apk:

Windows下反編譯apk(小寒工具箱)

   首先感謝水域小寒爲我們帶來Windows下反編譯apk-小寒工具箱。

    安裝使用前要關閉殺毒軟件,小寒工具箱誤報爲病毒。[請看機鋒論壇原鏈接:http://bbs.gfan.com/android-4059076-1-1.html]

    小寒工具箱用於apk反編譯簡直是大材小用。

    反編譯 apk ---  9

    回編譯 apk ---  10

    簽名   apk ---  2

    其他的就不多說了,相信你懂的!




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章