apktool是GOOGLE提供的apk反編譯工具,apktool能夠反編譯及回編譯apk,同時安裝反編譯系統(tǒng)apk所需要的framework-res框架,清理上次反編譯文件夾等功能。

【apktool軟件介紹】
ApkTool是一款非常優(yōu)秀的apk反編譯工具,擁有編譯、反編譯、簽名等功能,對于經(jīng)常DIY安卓軟件的朋友來說,是必不可少的工具。ApkTool能夠支持WIN7系統(tǒng),但是這款apk反編譯工具暫不支持WIN8系統(tǒng)。

【apktool使用方法】
一、運(yùn)行環(huán)境搭建
1.安裝JAVA。
2.完成安裝后在桌面我的電腦上點右鍵,按以下步驟點擊:屬性>高級>環(huán)境變量,在下面的“環(huán)境變量”點擊新建,創(chuàng)建兩個系統(tǒng)變量:[1.變量名:JAVA_HOME 變量值:C:\Program Files\Java\jre7,該目錄為java安裝目錄]、[2.變量名:CLASSPATH變量值:安裝目錄\lib\dt.jar;安裝目錄\lib\tools.jar;.注意,最后面有一個小點的“.”]
3.編輯一個系統(tǒng)變量-Path變量[在它的變量值最后面加上;安裝目錄\bin
注意,前面有個分號]
4.測試;運(yùn)行CMD(開始,運(yùn)行,輸入cmd,回車),輸入java -version,回車,如出現(xiàn)JDK版本,那就是已經(jīng)安裝成功了。
二、編譯方法
普通APK:
1.將APK放置到APKTool目錄下,并改名為123.apk
2.打開APKTool,選擇1進(jìn)行反編譯操作完成后會生成一個apk文件夾,大家可以進(jìn)行改代碼、換圖標(biāo)等操作!
3.修改完成后,選擇數(shù)字3,進(jìn)行回編譯和簽名工作,此時生成的apk就可以直接安裝了!
當(dāng)然你也可以選擇2,只進(jìn)行回編譯操作(這時的APK沒有簽名不能安裝)
4.然后選擇4進(jìn)行單獨的簽名工作!
系統(tǒng)APK:
需要將系統(tǒng)APK,framework-res.apk放置到APKTool目錄里,并將系統(tǒng)apk改名為123.apk(如果是HTC Rom你還需要將com.htc.resources.apk也放到目錄里)

【apktool使用教程】
要想使用apktool等工具,首先必須搭建java環(huán)境
請自己下載JDK,看好自己是32-bit還是64-bit,對應(yīng)下載。
java JDK:http://www.sygqzm.com/downinfo/63687.html
安裝,我是安裝在 C:\Program Files\Java\jdk1.7.0 要記住安裝位置,待會兒用的著。
接著(以win7示例,xp也差不多)以此打開 計算機(jī)-屬性-高級系統(tǒng)設(shè)置-高級-環(huán)境變量,
如下圖


點擊系統(tǒng)變量(s)下的新建按鈕
新建 變量名 JAVA_HOME
變量值為 C:\Program Files\Java\jdk1.7.0(即剛才的安裝路徑,視自己情況而定)

同理
新建 變量名 PATH
變量值 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
新建 變量名 CLASSPATH
變量值 .;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar(陷阱,前面的符號不要忘了哦)
最后保存下配置。。。。。
至此,java環(huán)境已經(jīng)配置成功。為了保險起見,我們來驗證一下
打開CMD(開始-附件-命令提示符 或者 win+R)


輸入javac或者java,回車如果出現(xiàn)以下類似幫助,哈哈,恭喜你

接下來主角出場啦,就是apktool,雖說這個工具網(wǎng)上到處都是,但好多不能編譯4.0的apk。所以但我極力推薦下面這個(雖說比起其他的麻煩一些,但成功率是我見過最高的,為某些懶惰的機(jī)友著想,我也做了些傻瓜處理),這個工具我找的好辛苦的啊。
在下面的工具包里。下載下來之后,解壓到任意路徑。(建議是某個盤的根目錄,好找,哈哈)
我的是這樣的

這個工具基本只有以下兩個命令:
一、apktool d XX.apk YY
apktool d為反編譯命令,其中d代表decode
XX.apk為需要反編譯的apk的文件名(XX最好不要帶漢字)
YY為存放反編譯后的文件的文件夾(隨你便,也不要為漢字。。。。YY也可以省略,默認(rèn)放在XX文件夾內(nèi),建議直接省略)
二、命令說明:apktool b YY(上面省略的話就是XX,哈哈)
apktool b為重新編譯命令
YY為需要編譯的目錄(就是存放剛剛你定義的文件夾,上面省略的話就是XX)
下面我以RE管理器:http://www.sygqzm.com/downinfo/30288.html(非系統(tǒng)文件)為例(剛好桌面上有一個,哈哈,直接拿來用)
一、傻瓜方式
1、 將“re管理器.apk”拉進(jìn)apktool文件夾內(nèi),如下:

2、 將“re管理器.apk”改名為“0.apk”(是零,不是O)

3、 雙擊“點我反編譯.bat”,然后等。。。。等。。。。等。。。。。。。。。。。。然后就發(fā)現(xiàn)多了一個文件名為0文件夾。

4、 由于是學(xué)習(xí)階段,暫時不做修改,直接雙擊“點我回編譯.bat”回編譯感受下成功的喜悅。看著窗口,你就知道生成的apk在哪里了。(吊吊胃口,誰用誰知道)
5、 當(dāng)然,你以后做到這一步,還需要簽名才能安裝。簽名工具最后有下載,下了你就會用。
二、手動方式(以4.04系統(tǒng)文件systemui.apk修改1%電量為例)
1、 將systemui.apk還有framework-res.apk(很重要)放入apktool文件夾下
2、 接著打開CMD窗口,輸入e: (回車)
3、 再輸入cd apktool(回車) 結(jié)果如下:

4、 接著輸入:apktool if framework-res.apk(回車),這一步是加載框架,反編譯系統(tǒng)程序時很必要。但是我這個版本可以省略這一步的,為安全起見,我順便也做了這步

5、 輸入apktool d systemui.apk(回車),看到下面就成功一半了

6、 然后你就可以修改新生成的systemui文件夾里邊的文件了(可沒讓你亂改,哈哈)現(xiàn)在就可以將1%電池腳本替換到apktool\systemui\res\drawable里邊了。如下


7、 然后將你需要的電量圖標(biāo)復(fù)制到apktool\systemui\re s\drawable-hdpi里邊。
8、 回編譯,CMD窗口輸入apktool b systemui(回車)出現(xiàn)下面畫面,你就有希望成功了。

9、 最后,很重要的一步,你看不到自己卡M了不要怪我哈。這里將原始apk稱為A,新生成的apk稱為B。以方便下面敘述。將A,B均用winrar打開,不要解壓。
第一,(還有第二哦)將B中的resources.arsc文件拉到A中替換,壓縮方式改為存儲。切記


第二:將B中的電量腳本拉到A中進(jìn)行替換,方法參考上面。B中的drawable-hdpi文件夾也拉進(jìn)A中替換。大功告成,佩服你自己吧。


最后,修改好的A就可以替換到你的手機(jī)啦,不過切記要先改權(quán)限,相信大家都懂的。
總結(jié):系統(tǒng)apk的反編譯是不需要簽名的,但最后要進(jìn)行替換。如上。
一共要替換兩類:
1、resources.arsc文件
2、回編譯之前修改過的文件。如例子中的電量腳本與電量圖標(biāo)所在的drawable-hdpi文件夾。




































