本帖最后由 山陰路的夏天 于 2018-3-1 15:19 編輯
要定制自已 ROM 首先要從官方原生 ROM 提取 system.img system.img 這個系統(tǒng)文件解包并打包成 update.zip 的形式用來刷機,update.zip 制作步驟: 一、準備工作: 1、提取 system.img ,具體方法見: 提取到后,把 system.img 放到你的 linux 操作 環(huán)境可以訪問的某個文件夾,例如 system/system.img ,盡量把文件夾命名成 system ,以 后就不用修改壓縮包了(Linux 的路徑書寫方式,這里需要提示一點,Linux 終端是對大小 寫敏感的,請注意。 ) 2、 Linux 操作環(huán)境 (任意的, 例如: 虛擬機安裝、 虛擬機 LiveCD、 實機安裝、 實機 LiveCD 等等,不在本教程討論范圍) 3、img 解包工具 unyaffs.zip (自己百度下載)下載并解壓縮。
二、解包 system.img 文件 1、啟動 Linux 并以 root 用戶登錄(如何用 root 登錄,自己在網(wǎng)上搜索一下吧) ,把剛 才解壓的 unyaffs 復制到 /bin 文件夾下 2、 啟動終端, 進入 /bin 文件夾 (cd /bin) 輸入如下命令 sudo chmod 777 unyaffs (賦予 unyaffs 執(zhí)行權限) :
3、 進入剛才存放 system.img 文件夾, (例如我的是/media/Soft/system/ 這里的 media ( 是掛載的硬盤分區(qū),Soft 是硬盤分區(qū)卷標(我的是 F 盤) )里,執(zhí)行命令 unyaffs system.img (解包 img 的命令行) ,直到屏幕顯示:
4、進入 system 文件夾刪除 system.img 文件
5、在終端命令行狀態(tài)下輸入命令 sudo chmod -R 777 * (為 system 文件夾下所有目 錄和文件賦予最高權限) :
三、打包最原始的 update.zip
1、在終端命令行狀態(tài)下輸入命令返回 system 的上一級目錄(父目錄) ,如下圖
2、在終端命令行下執(zhí)行 zip -r system.zip system(把 system 文件夾打包成 zip 文件)
3、把 system.zip 文件夾重命名為 update.zip 備用,system 文件可以刪除了(如果以后 需要從這里提取原機程序,是可以保留的)
四、修改 update.zip 為可刷機的 ROM 包 1、重新啟動計算機,進入 windows 操作系統(tǒng) 2、這里我們需要兩個東東:① 刷機腳本 ② 內核(boot.img) 。其中刷機腳本可以從其 他大俠的 rom 里提取, (提取整個 META-INF 文件夾)這里就不再贅述,下面會提供一個最 基本的 (詳細的刷機腳本命令正在研究, 這個需要看 Recovery 的源代碼來確定)boot.img(必須適用你的機型) 提取官方原生(RUU/.exe)ROM 刷機文件 教程中在那個壓縮文件里就有, 在 也可以從大俠們的 rom 里提取。 基本的升級腳本 update-script 代碼 show_progress 0.1 0 format SYSTEM: copy_dir PACKAGE:system SYSTEM: show_progress 0.2 0 format BOOT: write_raw_image PACKAGE:boot.img BOOT: show_progress 0.2 10 其中 show_progreess x.x x 是在刷機的時候顯示進度的 format SYSTEM:是格式化 system 用的 copy_dir PACKAGE:system SYSTEM: 是把升級包里的 system 文件夾復制到 system 分區(qū) write_raw_image PACKAGE:boot.img BOOT: 刷寫包內的 boot.img(內核的) 具體詳細的代碼請參照一定定制的刷機包中的相同文件,這里不在贅述(主要是沒有吃透,害怕出錯)
3、準備好了 update.zip、META-INF 文件夾 boot.img 內核映象,就可以開始了,用 winrar 打開 update.zip 文件(不是解壓縮) ,把 META-INF boot.img 直接拖進壓縮包里,然后用簽 名工具對新的 update.zip 簽名就可以了。
4、簽名工具下載:
Rom-sign.rar (自己百度下載)
簽名方法: 把下載的 Rom-sign 解壓, 把新的 update.zip 文件放到該文件夾, 運行 Sign.bat 批處理文件就可以了(這里需要注意的是,zip 文件的文件名必須為 update.zip)等待批處理 運行完畢后,該目錄下會生成已經(jīng)簽名的 update_signed.zip。
定制自己的 update.zip 刷機包完成!
1,固件精減、添加 APK 軟件 將 system.img 解包,解包后將../system/app 目錄下的不需要的 APK 文件進行刪除、 修改、替換,以制作適合自己的固件包,對于 app 目錄內不清楚用途的 APK 文件,請勿隨 意刪除,以免引起不必要的問題。 注意:據(jù)說個別 APK 軟件需自帶的庫文件支持才能正常運行,此時可用 WinRAR 等壓
縮軟件將 APK 文件打開(將.apk 后綴改成.zip,然后用壓縮軟件打開即可) ,從里邊找到后 綴為.so 的文件,然后放入../system/lib 文件夾下即可。 修改完成后,然后進行打包、升級、測試。
2,美化界面 這個又涉及到 APK 文件的修改了,這部分的教程就不作過多的介紹了,有需要的 同鞋可以上網(wǎng)去 Google 下相關資料,大把的教程可供參考。 將 system.img 進 行 解 包 , 解 包 后 在 ../system/framework 文 件 夾 下 找 到 framework-res.apk,將.APK 后綴改名為.zip,然后將其中的 assets、res 兩個文件夾解壓出 來開始我們的美化工作。 要注意修改后的圖片分辨率大小和圖片格式要與原來保持一致, 否 則會出錯的哦。 A.界面美化 找到解壓后的下列兩個目錄,這兩個目錄存放所有界面的系統(tǒng)圖標,可對需要修改的 界面小圖標進行美化: ../framework-res/res/drawable ../framework-res/res/drawable-land B.修改開機 LOGO(Android 啟動時,出現(xiàn)閃動的 ANDROID 字樣的動畫圖片) Android 的系統(tǒng)登錄動畫類似于 Windows 系統(tǒng)的滾動條,是由前景和背景兩張 PNG 圖 片組成, 這兩張圖片也是位于../system/framework/framework-res.apk 文件當中。 前景圖片 (android-logo-mask.png) 上的 Android 文字部分鏤空, 背景圖片 (android-logo-shine.png) 則是簡單的紋理。系統(tǒng)登錄時,前景圖片在最上層顯示,程序代碼控制背景圖片連續(xù)滾動, 透過前景圖片文字鏤空部 分滾動顯示背景紋理,從而實現(xiàn)動畫效果。以相同的原理修改或 替換下面兩張圖片即可達到目的。 ../framework-res/assets/images/android-logo-mask.png ../framework-res/assets/images/android-logo-shine.png android-logo-mask.png :Android 默認的前景圖片,文字部分鏤空,大小256×64 android-logo-shine.png :Android 默認的背景圖片,有動感效果,大小512×64 美化完成后,將修改過的圖片替換掉 APK 文件中相應的文件,然后將 APK 文件中 META-INF 文件夾內的 CERT.SF、CERT.RSA 兩個文件刪除,然后用簽名工具重新簽名。再將 簽名后的 APK 文件替換掉原先的文件,之后重新打包成 system.img 并用工具升級即可。 3,桌面美化 感覺桌面默認的公版壁紙、搜索條、快捷鍵等圖標太難看?沒問題,把它都換了吧。 將 system.img 進行解包,解包后在../system/app 文件夾下找到 Launcher.apk, 將.APK 后綴改名為.zip,然后將其中的 res 文件夾解壓出來,將需要美化的圖片進行美化、替換, 修改好后按照上面的方法將文件替換、簽名、打包再升級即可
4.字體更改 ../system/fonts 字庫目錄 用 ROOT 管理器 找到適合大小的字庫放進去(英文或者拼音命名) 格式是 TTF 的哦
其他的大家繼續(xù)發(fā)揮啦 我只是給點提示 如果你不會改的還需要多多補補知識 或者不要亂改喔;我也剛剛研究,本文也是從百度借鑒過來的,有不對的地方請指出,謝謝~
|