Android反編譯

http://blog.csdn.net/guolin_blog/article/details/49738023

一、反編譯代碼

要想將APK文件中的代碼反編譯出來芝囤,我們需要用到以下兩款工具:

dex2jar這個工具用于將dex文件轉(zhuǎn)換成jar文件

下載地址:http://sourceforge.net/projects/dex2jar/files/

jd-gui這個工具用于將jar文件轉(zhuǎn)換成java代碼

下載地址:http://jd.benow.ca/


1.解壓dex2jar壓縮包后,你會發(fā)現(xiàn)有很多個文件男窟,如下圖所示:

其中我們要用到的是d2j-dex2jar.bat這個文件

2.然后我們將Demo.apk文件也進(jìn)行解壓挨下,如果不知道怎么直接解壓的可以先將文件重命名成Demo.zip,然后用解壓軟件打開轻姿。解壓之后你會發(fā)現(xiàn)里面有一個classes.dex文件,如下圖所示:

3.這個classes.dex文件就是存放所有java代碼的地方了逻炊,我們將它拷貝到dex2jar解壓后的目錄下互亮,并在cmd中也進(jìn)入到同樣的目錄,然后執(zhí)行:

d2j-dex2jar classes.dex

執(zhí)行結(jié)果如下圖所示:

沒有報任何錯誤余素,這就說明我們已經(jīng)轉(zhuǎn)換成功了”荩現(xiàn)在觀察dex2jar目錄,你會發(fā)現(xiàn)多了一個文件桨吊,如下圖所示:

4.可以看到威根,classes-dex2jar.jar這個文件就是我們借助工具之后成功轉(zhuǎn)換出來的jar文件了。但是對于我們而言视乐,jar文件也不是可讀的洛搀,因此這里還需要再借助一下jd-gui這個工具來將jar文件轉(zhuǎn)換成java代碼。

下面就很簡單了佑淀,使用jd-gui工具打開classes-dex2jar.jar這個文件留美,結(jié)果如下圖所示:

OK,由此可見,我們的代碼反編譯工作已經(jīng)成功了

二独榴、反編譯資源

apktool這個工具用于最大幅度地還原APK文件中的9-patch圖片僧叉、布局奕枝、字符串等等一系列的資源棺榔。

下載地址:http://ibotpeaches.github.io/Apktool/install/

1.解壓后文件

2.接下來的工作就很簡單了,我們將Demo.apk拷貝到和這兩個文件同樣的目錄當(dāng)中隘道,然后cmd也進(jìn)入到這個目錄下症歇,并在cmd中執(zhí)行如下命令:

apktool d Demo.apk

上述命令的執(zhí)行結(jié)果如下圖所示:

這就說明反編譯資源已經(jīng)成功了。

三谭梗、重新打包

1.首先我們來看一下通過apktool反編譯后的包目錄情況忘晤,如下圖所示:

其中,original文件夾下存放的是未經(jīng)反編譯過激捏、原始的AndroidManifest.xml文件设塔,res文件夾下存放的是反編譯出來的所有資源,smali文件夾下存放的是反編譯出來的所有代碼远舅,AndroidManifest.xml則是經(jīng)過反編譯還原后的manifest文件闰蛔。

2.在做了改動之后,我們現(xiàn)在來把反編譯后的Demo文件夾重新打包成APK吧图柏,其實非常簡單序六,只需要在cmd中執(zhí)行如下命令:

apktool b Demo -o New_Demo.apk

其中b是build的意思,表示我們要將Demo文件夾打包成APK文件蚤吹,-o用于指定新生成的APK文件名例诀,這里新的文件叫作New_Demo.apk。執(zhí)行結(jié)果如下圖所示:

現(xiàn)在你會發(fā)現(xiàn)在同級目錄下面生成了一個新的APK文件:

3.簽名打包安裝

jarsigner-verbose-sigalgSHA1withRSA-digestalgSHA1-keystore簽名文件名-storepass簽名密碼 待簽名的APK文件名 簽名的別名

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末裁着,一起剝皮案震驚了整個濱河市繁涂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌二驰,老刑警劉巖扔罪,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異诸蚕,居然都是意外死亡步势,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進(jìn)店門背犯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來坏瘩,“玉大人,你說我怎么就攤上這事漠魏【蠓” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長哪自。 經(jīng)常有香客問我丰包,道長,這世上最難降的妖魔是什么壤巷? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任邑彪,我火速辦了婚禮,結(jié)果婚禮上胧华,老公的妹妹穿的比我還像新娘寄症。我一直安慰自己,他們只是感情好矩动,可當(dāng)我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布有巧。 她就那樣靜靜地躺著,像睡著了一般悲没。 火紅的嫁衣襯著肌膚如雪篮迎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天示姿,我揣著相機(jī)與錄音甜橱,去河邊找鬼。 笑死峻凫,一個胖子當(dāng)著我的面吹牛渗鬼,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播荧琼,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼譬胎,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了命锄?” 一聲冷哼從身側(cè)響起堰乔,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎脐恩,沒想到半個月后镐侯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡驶冒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年苟翻,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片骗污。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡崇猫,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出需忿,到底是詐尸還是另有隱情诅炉,我是刑警寧澤蜡歹,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站涕烧,受9級特大地震影響月而,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜议纯,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一父款、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧痹扇,春花似錦铛漓、人聲如沸溯香。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽玫坛。三九已至结笨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間湿镀,已是汗流浹背炕吸。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留勉痴,地道東北人赫模。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像蒸矛,于是被迫代替她去往敵國和親瀑罗。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容