1. 程式人生 > >反編譯+回編譯教程,DIY美化你的手機【反編譯framework-res.apk為例】

反編譯+回編譯教程,DIY美化你的手機【反編譯framework-res.apk為例】

美化主要就是對framework-res.apk和systemUI.apk這兩個檔案的反編譯與回編譯,這裡說的反編譯與回編譯是所有深度美化的基礎,所有的美化都是基於對apk的反編譯後才能進行的。

而修改替換"framework-res.apk"和"systemUI.apk"後導致無法進入系統,或者無限開機重啟的,基本都是在編譯跟反編譯上出了問題!!

首先要完成構建java環境
『DOSPY安卓』配置JAVA環境教程,自己動手做美化基礎!不再小白,深入安卓第一步!


要想美化,必須先認真看懂下面的每一步,

並注意:

①framework-res.apk是不可以重簽名的。

②修改framework-res.apk之前務必先做好備份!這是相當重要的檔案,稍有出錯都導致你進不了系統!

③此教程來自DOSPY論壇

回編譯系統程式出現錯誤的解決方法在這裡

載入安卓framework框架資源,解決系統程式無法正常回編譯


----------------------分割線----------------------

一、下載編譯所需檔案:apktool APKTool.rar(2.43 MB)


二、提取從手機中用RE管理器從/system/framework下里面找到framework-res.apk。然後把他複製,放到SD卡,用資料線把它拷到電腦上。

把附件APKTool.rar解壓得到資料夾,剪下進任意盤根目錄,C盤或者D盤都可以。我的就放到E盤了。


接著就把複製出來的framework-res.apk放到apktool資料夾裡。如圖:


開啟cmd (開始--執行--輸入cmd--確定、或者快捷鍵win+R,輸入cmd,回車)

輸入以下程式碼(輸完一行按下回車)


FREE: E: (這個E是我放APKTool的盤。如果你放在C盤。則輸入C:回車;D盤則D:回車)

cd APKTool (這個是開啟資料夾的意思)

apktool if framework-res.apk (這個是在CMD模式下安裝載入framework-res.apk)

apktool d framework-res.apk framework-res (這裡的d表示反編譯命令,後面的framework-res表示生成檔名為framework-res的資料夾)







這時;E:\APKTool目錄下就會多出一個名為framework-res的資料夾,裡面放著就是反編譯出來的檔案了





如圖,上面已經反編譯好了,具體要修改些什麼內容,怎麼修改,我會在以後的教程中說的~

學會了反編譯,以後的一切都會變得so easy!!!

當你已經在這裡修改好想要修改的東西以後,接下來就要進行編譯回去了!!輸入

FREE:
apktool b framework-res (b表示回編譯命令)






成功編譯之後,framework-res資料夾就會多了個dist的資料夾,裡面放的就是編譯好的檔案,同樣命名為framework-res.apk的




----------------------分割線----------------------

好了,最關鍵的一步就在下面了!!!並不是編譯好了就可以把這檔案放回手機,還不可以的!

注意,我們現在有兩個apk檔案:

一個是編譯前的framework-res.apk(在E:\APKTool下)一個是編譯後的framework-res.apk(在E:\APKTool\framework-res\dist)

用壓縮軟體同時開啟沒編譯過framework-res.apk,和我們修改並回編譯後的framework-res.apk,是開啟,而不是解壓



細心觀察,會發現編譯後的framework-res.apk,少了一個META-INF的資料夾,這個就是apk包的簽名,但是這個框架檔案framework-res.apk是不能簽名的,也就是說我們最後要的是沒有編譯過framework-res.apk這個檔案!!!

所以,我們需要進行下面的步驟

FREE:
把resources.arsc檔案從修改過回編譯的framework-res.apk拉到原先的framework-res.apk中替換,


注:其他程式修改後需要替換的檔案有兩類:
①剛才反編譯後,你所修改過的所有檔案(一般在res資料夾裡面)
②resources.arsc這一個檔案
所有檔案一個都不能替換少了






FREE: 替換好後,我們把framework-res.apk放回到記憶體卡上。

然後用RE瀏覽器把“framework-res.apk”複製到/system目錄下,然後,長按檔名選擇許可權,具體許可權修改如下圖(RE管理器掛載為讀/寫)




修改好確定後,再把framework-res.apk剪下到/system/framework目錄下,選擇替換原檔案,再次確認許可權是否有誤!

注意:一定要修改好許可權後才能放進/system/framework,不然系統會直接崩潰!!

最後就是重啟手機,一番激動以後一看:順利進入系統了!!!!