1. 程式人生 > >android。apk反編譯學習,精簡實用版

android。apk反編譯學習,精簡實用版

作為一個開發者,你可能會很想知道這些效果介面是怎麼去實現的,這時,你便可以對改應用的APK進行反編譯檢視。下面是我參考了一些文章後簡單的教程詳解。

(注:反編譯不是讓各位開發者去對一個應用破解搞重灌什麼的,主要目的是為了促進開發者學習,借鑑好的程式碼,提升自我開發水平。)

原文借鑑:http://blog.csdn.net/vipzjyno1/article/details/21039349/感謝原博主文章支援

測試環境:

        win 7 


反編譯工具下載http://download.csdn.net/download/qq_36355271/10105458(綠色集合版)

工具介紹:

apktool  

作用:資原始檔獲取,可以提取出圖片檔案和佈局檔案進行使用檢視

dex2jar

作用:將apk反編譯成java原始碼(classes.dex轉化成jar檔案)

jd-gui

作用:檢視APK中classes.dex轉化成出的jar檔案,即原始碼檔案


反編譯流程:

一、apk反編譯得到程式的原始碼、圖片、XML配置、語言資源等檔案

下載上述工具中的apktool,解壓得到3個檔案:aapt.exeapktool.batapktool.jar ,將需要反編譯的APK檔案放到該目錄下,

開啟命令列介面(執行-CMD) ,定位到apktool資料夾,輸入以下命令:

apktool.bat d -f  test.apk  test 

(命令中test.apk指的是要反編譯的APK檔案全名,test為反編譯後資原始檔存放的目錄名稱,即為:apktool.bat   d  -f    [apk檔案 ]   [輸出資料夾]

之後發現在資料夾下多了個test檔案,點選便可以檢視該應用的所有資原始檔了。

二、Apk反編譯得到Java原始碼

下載上述工具中的dex2jarjd-gui ,解壓

將要反編譯的APK字尾名改為.rar或則 .zip,並解壓,得到其中的額classes.dex檔案(它就是java檔案編譯再通過dx工具打包而成的),將獲取到的

classes.dex放到之前解壓出來的工具dex2jar-0.0.9.15 資料夾內,

在命令列下定位到dex2jar.bat所在目錄,輸入dex2jar.batclasses.dex效果如下:

在改目錄下會生成一個classes_dex2jar.jar的檔案,然後開啟工具jd-gui資料夾裡的jd-gui.exe,之後用該工具開啟之前生成的


classes_dex2jar.jar檔案,便可以看到原始碼了,效果如下:


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

相關推薦

androidapk編譯學習精簡實用

作為一個開發者,你可能會很想知道這些效果介面是怎麼去實現的,這時,你便可以對改應用的APK進行反編譯檢視。下面是我參考了一些文章後簡單的教程詳解。 (注:反編譯不是讓各位開發者去對一個應用破解搞重灌什麼的,主要目的是為了促進開發者學習,借鑑好的程式碼,提升自我開發水平

Android實踐 -- Apk編譯工具-dex2jar

Apk反編譯工具-dex2jar 可以使用dex2-jar 和 工具 jd-gui配合進行apk的反編譯和檢視工作 下載dex2-jar和jd-gui工具 網盤下載 下載之後分別解壓到 對應的檔案目錄 apk本身就是一個壓縮檔案,通過rar或zi

解決AndroidKiller APK 編譯失敗無法繼續下一步原始碼編譯!

報錯背景 今天使用AndroidKiller V1.3.1,反編譯一個APK,遇到如下報錯: 當前 Apktool 使用版本:Android Killer Default APKTOOL 正在反編譯 APK,請稍等... >I: 使用 ShakaApktool 2.0.0-20150914 >I:

Android簡單的編譯Apk並重新打包簽名釋出

本文簡單介紹apk是如何修改logo(ic_launcher),類似的資原始檔修改也可以通過此方式。不過要修改class的話就要涉及到smali的學習了,這裡就暫且不談,後續有需要再做更新。 一、工具介紹: apktool:用來反編譯apk,apk重新打包

Android APK編譯及去廣告漢化apk優化簽名等

概述 Android APK反編譯是個有趣的事情。我們可以對APK反編譯進行漢化破解工作等。 Android APK反編譯主要涉及三個工具的使用,分別是 apktooldex2jarjd-gui(即jad)最後介紹了一款國人開發的整合反編譯工具AndroidKiller

Android APK編譯方法(可以獲取APK xml和android Manifestjava程式碼等內容)

APK反編譯和簽名 apk檔案反編譯以及簽名打包 通過dex2jar和jd我們可以反編譯apk中的dex,可以比較完美的檢視java原始檔;通過apktool可以反編譯apk中的xml等資原始檔,然後通過apk-sign簽名,可以製作成修改版的可釋出apk檔案。 1.dex

編譯apk工具apk編譯工具Jadx的使用

lib abc 最新版 選擇 dex2jar apk反編譯 elf .apk nbsp Android初學者會使用其他人的apk,這樣能知道別人是如何編寫的,在知道別人是如何編寫的前提下需要一款能實現反編譯軟件,再把軟件反編譯出來查看其中的代碼。 如何使用反編譯apk工具?

Android APK編譯就這麽簡單 詳解(附圖)

雙擊 整合 cmd 進行 自我 nts clas 以及 思路 在學習Android開發的過程你,你往往會去借鑒別人的應用是怎麽開發的,那些漂亮的動畫和精致的布局可能會讓你愛不釋手,作為一個開發者,你可能會很想知道這些效果界面是怎麽去實現的,這時,你便可以對改應用的APK進行

Android APK編譯 apktool使用教程

文件夾 ossh ng- 右鍵 xmu shape func prev pos 2017年棋牌遊戲突然就火了,正所謂春江水暖鴨先知本猿處在軟件行業中就能清晰的感受到市場的變化,最近老家那邊也是玩的風生水起,於是最近閑暇時光想到反編譯下這些棋牌軟件,看看代碼實現的思路

AndroidAndroid如何對APK編譯

輸入 details href 樣式 class 圖片 logs apk反編譯 com 本文筆者粗略的介紹如何利用一些工具,對Android進行反編譯,從而得到源碼,希望對你有所幫助,筆者的android環境為4.4.2。 1.準備資源. 在開始之前,需要準備三項工具:

Android APK編譯

exe 下載 最新 free size 輸出 布局文件 最新版本 style 1.官方最新版本下載地址 http://java.decompiler.free.fr/?q=jdgui 2.反編譯流程: ①dex2jar (將apk反編譯成java源碼(classe

Android apk編譯-----【附:編譯工具】

        Android應用開發完成之後,我們最終都會將應用打包成一個apk檔案,然後讓使用者通過手機或者平板電腦下載下來進行安裝。正常情況下,Android應用打包成apk之後,就無法再看到開發這個應用時使用的資原始檔以及程式碼了。但是我們通過網上提供

Android安卓APK編譯分析、簡單修改內容、二次打包簽名

一、需求:想要修改一個apk裡面一串字串 環境: dex2jar----https://github.com/pxb1988/dex2jar/ JD-GUI----http://jd.benow.ca/ jdk1.8.0環境 二、先反編譯解包分析: (明

Android實用技能:你應該掌握的APK編譯技巧以及重新打包釋出

需要的工具 1,apktool: 反編譯獲取資原始檔的工具,包括圖片資源和佈局檔案等的獲取 下載地址:https://bitbucket.org/iBotPeaches/apktool/downloads 2,dex2jar:反編譯獲取原始碼的工具,將classes.dex 轉化為jar

android apk編譯編譯—改程式碼—再編譯—簽名)

1.工具(請到網站搜尋並自行下載):     ①apktool(反編譯:能得到圖片資源與佈局檔案等)     ②dex2jar(反編譯:能得到activity等java程式碼)     ③jd-gui(檢視dex2jar得到的java檔案)     ④手機簽名工具

Android Apk編譯 dex2j遇到如下問題 com.googlecode.d2j.DexException: not support version.

控制檯執行 如下命令 d2j-dex2jar.bat classes.dex //報如下錯誤 com.googlecode.d2j.DexException: not support version. at com.googlecode.d2j.read

Android工程師常用技能—APK編譯

概述:          很多的時候,當我們羨慕別人app的動效絢麗,素材優秀的時候,我們也想去用,怎麼辦?這個時候apk反編譯將會成為我們可以利用的工具。 準備工作:          下載

Android APK編譯詳解(附圖)

這段時間在學Android應用開發,在想既然是用Java開發的應該很好反編譯從而得到原始碼吧,google了一下,確實很簡單,以下是我的實踐過程。 在此鄭重宣告,貼出來的目的不是為了去破解人家的軟體,完全是一種學習的態度,不過好像通過這種方式也可以去漢化一些外國軟體。

Android-Mac電腦如何進行APK編譯-使用apktool、jd-gui

最近群裡有人問如何在mac下進行apk反編譯,我也沒試過,以前都是在windows下進行反編譯的,windows下很簡單,有許多比較好的整合工具,如apkide(改之理),不過我猜mac下應該和win

Android-Mac電腦如何進行APK編譯

一個好用的反編譯akp 教程 一個小筆記 第一步:下載反編譯工具集,apktool、dex2jar、jd-gui,最後我會上傳這些工具,解壓後如下圖: 第二步,工具集準備好之後還不能進行反編譯,你在命令視窗下執行輸入apktool 會提示命令不存