Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android截包與反編譯

Android截包與反編譯

編輯:關於Android編程

近期由於學習需要,嘗試了下截包與反編譯,發現對於簡單的反編譯與截包其實挺簡單的,而本文也主要介紹截包與反編譯工具的使用.

截包

截包的工具有很多,我這裡主要介紹簡單實用的fiddler.
官網下載地址:http://www.telerik.com/fiddler
下載完成後打開fiddler
1.首先,確保安裝 Fiddler 的電腦和你的手機在同一局域網內,因為Fiddler只是一個代理,需要將手機的代理指向 PC 機,不能互相訪問是不行的。
2.打開菜單欄中的Tools>Fiddler Options,打開“Fiddler Options”對話框。
這裡寫圖片描述
在Fiddler Options”對話框切換到“Connections”選項卡,然後勾選“Allow romote computers to connect”後面的復選框,然後點擊“OK”按鈕,設置允許遠程鏈接.
這裡寫圖片描述
3.然後在本機命令行輸入ipconfig命令行找到本機ip,由於我這裡手機和電腦都是連得無線網所以使用電腦無線網ip 192.168.0.102
這裡寫圖片描述
4.打開手機設置無線網代理界面 服務器設置為電腦無線網ip 端口為fiddler監聽端口8888
這裡寫圖片描述
5.現在就可以抓包了打開fiddler
這裡寫圖片描述
6還可以設置過濾器 過濾掉不想要的信息
這裡寫圖片描述

反編譯

apktool : 它可以解碼資源接近原始形式和重建後做一些修改,可以提取出圖片文件和布局文件進行使用查看
下載鏈接:http://download.csdn.net/detail/zly921112/9472996

dex2jar : 將apk反編譯成java源碼(classes.dex轉化成jar文件)
下載鏈接:http://download.csdn.net/detail/zly921112/9473310

jd-gui : 查看用dex2jar轉換生成的jar文件,查看源碼
下載鏈接:http://download.csdn.net/detail/zly921112/9473311

apktool(反編譯資源文件)
將工具中apktool,解壓得到aapt.exe,apktool.bat,apktool.jar,將需要反編譯的APK文件放到該目錄下,然後將命令行目錄切換至該目錄下.輸入apktool d test.apk,命令中test.apk指的是要反編譯的APK文件全名,反編譯後生成文件名與APK文件名相同
這裡寫圖片描述
雖然這裡有部分資源未能解碼但是大部分資源都得到了,
這裡寫圖片描述
test文件內部
這裡寫圖片描述
如果你想將反編譯完成的文件重新打包apk,那你可以輸入 apktool b test(編譯出來文件夾):
這裡寫圖片描述
在test文件下會發現多了兩個文件 build 和 dist(裡面存放著打包出來的APK文件)
這裡寫圖片描述
關於命令官網有給出例子
解碼:
這裡寫圖片描述
構建:
這裡寫圖片描述

dex2jar+jd-gui(反編譯.dex文件獲取java源碼)<喎?/kf/ware/vc/" target="_blank" class="keylink">vc3Ryb25nPjxiciAvPg0KvavSqre0seDS67XEYXBruvPXurjEs8kucmFyIL3i0bkstcO1vcbk1tC1xLbuY2xhc3Nlcy5kZXjOxLz+o6jL/L7NysdqYXZhzsS8/rHg0uvU2c2ouf1keLmkvt+08rD8tvizybXEo6mjrL2ru/HIobW9tcRjbGFzc2VzLmRleLfFtb3WrsewveLRubP2wLS1xLmkvt9kZXgyamFyLTAuMC45LjE1zsS8/rzQxNqjrMi7uvO9q8P8we7Q0MS/wrzH0Lu71sG4w8S/wrzPwi7K5MjrZGV4Mmphci5iYXQgY2xhc3Nlcy5kZXg8YnIgLz4NCjxpbWcgYWx0PQ=="這裡寫圖片描述" src="/uploadfile/Collfiles/20160328/20160328090853215.png" title="\" />
在該目錄下會生成一個classes_dex2jar.jar的文件,然後用jd-gui文件夾裡的jd-gui.exe,打開之前生成的classes_dex2jar.jar文件,便可以看到源碼了,效果如下:
這裡寫圖片描述
由於源碼被混淆了所以只能看到abc這種,其實挺惡心的,我還專門去查了反混淆希望能還原但是未發現解決辦法,如果有朋友能反混淆歡迎交流謝謝.

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