Android反編譯記錄

參考資料
http://blog.csdn.net/guolin_blog/article/details/49738023

【反編譯代碼】

到以下兩款工具:
dex2jar 這個(gè)工具用于將dex文件轉(zhuǎn)換成jar文件
下載地址:http://sourceforge.net/projects/dex2jar/files/
jd-gui 這個(gè)工具用于將jar文件轉(zhuǎn)換成java代碼
下載地址:http://jd.benow.ca/

java源代碼反編譯步驟:
1.apk包解壓,將dex文件,copy到 dex2java 文件夾中;
2.通過cmd命令行到文件夾 dex2jar,執(zhí)行命令:d2j-dex2jar xxx.dex; 將得到相應(yīng)的jar文件
3.通過 gui-jd 查看,第二部得到的jar文件;

【反編譯資源】
使用工具:
apktool
apktool 這個(gè)工具用于最大幅度地還原APK文件中的9-patch圖片、布局、字符串等等一系列的資源。
下載地址:http://ibotpeaches.github.io/Apktool/install/
下載文件1:apktool.bat
下載文件2:apktool_2.2.1.jar

反編譯資源步驟:
1.改名 apktool_2.2.1.jar 為 apktool.jar
2.將apk文件,copy到下載的文件的同一目錄;
3.cmd進(jìn)入此目錄,執(zhí)行 apktool d xxx.apk

其中d是decode的意思,表示我們要對Demo.apk這個(gè)文件進(jìn)行解碼。那除了這個(gè)基本用法之外,我們還可以再加上一些附加參數(shù)來控制decode的更多行為:

    -f 如果目標(biāo)文件夾已存在,則強(qiáng)制刪除現(xiàn)有文件夾(默認(rèn)如果目標(biāo)文件夾已存在,則解碼失?。?。
    -o 指定解碼目標(biāo)文件夾的名稱(默認(rèn)使用APK文件的名字來命名目標(biāo)文件夾)。
    -s 不反編譯dex文件,也就是說classes.dex文件會(huì)被保留(默認(rèn)會(huì)將dex文件解碼成smali文件)。
    -r 不反編譯資源文件,也就是說resources.arsc文件會(huì)被保留(默認(rèn)會(huì)將resources.arsc解碼成具體的資源文件)。

的緩存文件,將這個(gè)緩存文件刪除掉,然后再重新執(zhí)行反編譯命令應(yīng)該就可以成功了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容