1. 程式人生 > >轉【定製ROM教程】打造自己喜歡的ROM定製包(不止是修改)

轉【定製ROM教程】打造自己喜歡的ROM定製包(不止是修改)

製作方法   一、ROOT
無論是什麼版本,首先要ROOT一下機器這是定製的前提


先將LK2.02包中的LK2-02-1_update.zip和JE1-custom1-wp55580691.zip傳入SD卡中根目錄下。重新按住音量減、照相鍵、開機鍵,再次進入刷機模式,刷ROOT包中的i5700_LK2-02_PDA.tar
 

刷好了之後會自動進入recovery模式(介面綠綠的,綠色的字),用方向鍵選擇apply any zip from sd,然後選擇LK2-01_update.zip,按OK鍵,然後會有提示讓你按小房子鍵,按下小房子鍵即可。
全部執行完畢後,返回選擇第一項reboot重啟。
二、工具準備
下載安裝附件中的R.explorer管理器(rootexplorer.v2.9.4.apk)這個工具的作用是備份APK檔案、刪除APK檔案、檢視系統目錄裡面都有什麼


下載附件中的AndroidResEdit_By_hanhualan...解壓到電腦裡(如果不能執行則說明你需要安裝.NET Framework 2.0)我們主要用這個來對定製包簽名
三、定製包製作知識
一般定製ROM(不是美化、也不是製作MOD)其實就是對手機記憶體裡的system/app資料夾的內容進行自定義,自己安裝的軟體將不會出現在這裡,而是/data/資料夾中。
系統所有的程式都在這個資料夾裡,比如瀏覽器、撥號器、聯絡人等
先來看一下通常情況下這個資料夾裡都包含什麼:
/system/app/AlarmClock.apk 鬧鐘
/system/app/AlarmClock.odex
/system/app/Browser.apk 瀏覽器
/system/app/Browser.odex
/system/app/Bugreport.apk Bug報告
/system/app/Bugreport.odex
/system/app/Calculator.apk 計算器
/system/app/Calculator.odex
/system/app/Calendar.apk 日曆
/system/app/Calendar.odex
/system/app/CalendarProvider.apk 日曆提供
/system/app/CalendarProvider.odex
/system/app/Camera.apk 照相機
/system/app/Camera.odex
/system/app/com.amazon.mp3.apk 亞馬遜音樂
/system/app/Contacts.apk 聯絡人
/system/app/Contacts.odex
/system/app/DownloadProvider.apk 下載提供
/system/app/DownloadProvider.odex
/system/app/DrmProvider.apk DRM數字版權提供
/system/app/DrmProvider.odex
/system/app/Email.apk 電子郵件客戶端
/system/app/Email.odex
/system/app/FieldTest.apk 測試程式
/system/app/FieldTest.odex
/system/app/GDataFeedsProvider.apk GoogleData提供
/system/app/GDataFeedsProvider.odex
/system/app/Gmail.apk Gmail電子郵件
/system/app/Gmail.odex
/system/app/GmailProvider.apk Gmail提供
/system/app/GmailProvider.odex
/system/app/GoogleApps.apk 谷歌程式包
/system/app/GoogleApps.odex
/system/app/GoogleSearch.apk 搜尋工具
/system/app/GoogleSearch.odex
/system/app/gtalkservice.apk GTalk服務
/system/app/gtalkservice.odex
/system/app/HTMLViewer.apk HTML檢視器
/system/app/HTMLViewer.odex
/system/app/IM.apk 即使通訊元件包含MSN、yahoo通
/system/app/ImCredentialProvider.apk
/system/app/ImProvider.apk
/system/app/ImProvider.odex
/system/app/Launcher.apk 啟動載入器
/system/app/Launcher.odex
/system/app/Maps.apk 電子地圖
/system/app/Maps.odex
/system/app/MediaProvider.apk 多媒體播放提供
/system/app/MediaProvider.odex
/system/app/Mms.apk 簡訊、彩信
/system/app/Mms.odex
/system/app/Music.apk 音樂播放器
/system/app/Music.odex
/system/app/MyFaves.apk T-Mobile MyFaves程式
/system/app/MyFaves.odex
/system/app/PackageInstaller.apk apk安裝程式
/system/app/PackageInstaller.odex
/system/app/Phone.apk 電話撥號器
/system/app/Phone.odex
/system/app/Settings.apk 系統設定
/system/app/Settings.odex
/system/app/SettingsProvider.apk 設定提供
/system/app/SettingsProvider.odex
/system/app/SetupWizard.apk 設定嚮導
/system/app/SetupWizard.odex
/system/app/SoundRecorder.apk 錄音工具
/system/app/SoundRecorder.odex
/system/app/Street.apk 街景地圖
/system/app/Street.odex
/system/app/Sync.apk 同步程式
/system/app/Sync.odex
/system/app/Talk.apk 語音程式
/system/app/Talk.odex
/system/app/TelephonyProvider.apk 電話提供
/system/app/TelephonyProvider.odex
/system/app/Updater.apk 更新程式
/system/app/Updater.odex
/system/app/Vending.apk 製造商資訊
/system/app/Vending.odex
/system/app/VoiceDialer.apk 語音撥號器
/system/app/VoiceDialer.odex
/system/app/YouTube.apk Youtube視訊
/system/app/YouTube.odex


然後是定製包的結構,定製包的命名一般是XXXX(英文)
.zip內容包括
/system/app/my.apk(你想要放進系統中的程式)
/META-INF/com/google/update-script(定製包指令碼)
/META-INF/CERT.SF(簽名檔案)
/META-INF/CERT.RSA(簽名檔案)
/META-INF/MANIFEST.MF(簽名檔案)

(附件中的custom.zip為範例,大家可以下載直接進行修改)
首先應將準備好的程式放進這個ZIP包的/system/app目錄裡,只要將程式拖進附件中custom.zip的APP目錄即可
然後刪除/META-INF/CERT.RSA和META-INF/CERT.SF這兩個檔案,為了簽名做準備
下面我們的來看最後一處需要編輯的地方——指令碼
四、指令碼:
現在我們對裡面的檔案有了大致的瞭解,那麼舉例說明,如果我們要做一個基於以上ROM的定製包,那麼大概要進行兩種操作
1.新增目錄裡的APK程式到ROM的system/app裡
2.從ROM裡刪除APK程式(即瘦身)
3.顯示程序
新增目錄的語句為copy_dir PACKAGE:定製包路徑 手機記憶體路徑
刪除程式的語句為delete 手機記憶體路徑
顯示程序語句為show_progress
指令碼檔案可用TXT、記事本等程式作為開啟方式並編輯儲存
作為初學者
只需要掌握以下範例即可
show_progress 0.1 0
delete SYSTEM:app/DivXRegCode.odex
delete SYSTEM:app/YouTube.apk
copy_dir PACKAGE:system SYSTEM:
show_progress 0.1 10

其中對前後兩個show_progress語句不需要理解,看中間的,
第一句是刪除system/spp資料夾內的DivXRegCode.odex檔案,
第二句是刪除system/spp資料夾內的YouTube.apk檔案,
第三句是複製(同時會覆蓋已存在的檔案)定製包中的system資料夾到手機記憶體的system資料夾。
需要注意的是不是所有的系統檔案都可以替換、刪除,一般來說
Layar304-final-market.apk
MetaMidpPlayer.apk
MidpPlayer.apk
switchers.apk
Youtube.apk
MySpace.apk
Facebook.apk

這些休閒娛樂類的東西可以刪除,像MMS、PHONE等重要的程式通常情況下替換或者刪除會出問題
(打個廣告,可以參照魔獸小王子的帖子http://www.hiapk.com/bbs/viewthread.php?tid=207574&highlight=)
掌握了這個就可以輕鬆地寫一般的指令碼了,一定要注意,指令碼的最後一行下面必須有個空行,即只有一個回車存在的空行(不理解的看看附件中custom.zip裡的指令碼)
指令碼也製作完成後,即可進行下一步:簽名
五、簽名
現在我們已經有了一個custom.zip檔案,裡面的/META-INF/CERT.RSA和META-INF/CERT.SF已經被我們刪掉,並且向APP資料夾裡添加了檔案
現在該對它簽名了
我們這步的意義是讓定知道了解它裡面裝的都是什麼,相當於對裡面的程式進行一次點名,不然使用時會出錯
先將我們的custom.zip重新命名為custom.apk
解壓附件中的AndroidResEdit_By_hanhualangzi_v_1.5.rar
執行AndroidResEdit_By_hanhualangzi_v_1.5.exe(如果不能執行則說明你需要安裝.NET Framework 2.0)
然後單擊工具欄裡的“簽名(S)”
然後單擊“簽名APK檔案(A)”
按選擇按鈕
找到並選擇custom.apk,點選開啟
按下“立即簽名”按鈕
點儲存~
稍等一會兒,裡面的東西越多,ZIP包越大,等的時間越長
提示你簽名成功後在你所儲存的目錄下就會出現custom-SignFile.apk
我們將其重新命名為custom-SignFile.zip,這是裡面就又有了/META-INF/CERT.RSA和META-INF/CERT.SF兩個檔案,並且和原來的不同,這是屬於你這個定製包的簽名檔案
將它放進SD卡的根目錄裡
六、安裝
提醒一下!如果對自己做的定製包不是非常有信心,而且不想重新刷機,一定要備份ROM!
安裝定製包方法:
進入recovery模式),用方向鍵選擇apply any zip from sd,然後選擇custom-SignFile.zip,按OK鍵,然後會有提示讓你按小房子鍵,按下小房子鍵即可。
全部執行完畢後,返回選擇第一項reboot重啟。
進入系統之後,如果成功的話,發現你在指令碼中想刪掉的程式已經不再選單裡了,而新增進system/app的程式出現在選單裡,這樣一套基本的製作定製包的過程就結束了。
你已經可以製作各種定製包以備刷機後使用~
七、進階
如果已經對製作定製包熟悉了的話
那麼只要稍微動些腦子就可以做一些替換系統字型、修復聯絡人BUG等高階一些的定製包~
提醒一下字型檔案在system/font裡,中文字型的檔名為DroidSansFallback.ttf
暫時寫到這裡,近幾天我會將替換字型和整合各種修復BUG補丁到定製包中的方法教給大家
八、答疑區
1.能不能直接用R.explorer管理器 刪除掉系統自帶的無用軟體啊? 這樣做可以嗎?
可以,方法是root後開啟管理器,進入手機system/app目錄點選上面的掛載(mount)讀/寫(RW)按鈕,之後就可以對此資料夾的檔案進行修改或者刪除了