製作Android ROM的步驟製作Android ROM有兩種方法:- 編譯Android源代碼的方法,這個比較複雜,以後再介紹;
- 在已有的ROM基礎上製作或者叫定制自己的ROM。
本文介紹的是在已有ROM基礎上的定制步驟。
我這裡使用的機器是Nexus One,於是下載了第三方的ROM,這里以安卓農夫ROM 2.4為基礎。當然也可以用CyanogenMod提供的ROM,實際上安卓農夫的ROM就是在該ROM基礎上做的定制。
解壓縮ROM,比如安卓農夫ROM 2.4文件名 為:
n1_2.4_signed 2.zip
解壓縮後,可以看到目錄中:- boot.img文件,這是系統的鏡像,包括Linux內核以及系統啟動的一些基本文件。
- META-INF目錄,這裡主要有系統更新腳本,路徑是:META-INF/com/google/android/updater-script
- system/app目錄,系統自帶的應用程序都放在這個目錄下,比如日曆、聯繫人、gmail等,你可以把自己的apk文件放在該目錄下,這樣就可以在刷ROM的時候直接安裝上
- system/bin目錄,系統命令,可以通過adb shell登錄後執行,比如top
- system/etc目錄,類似linux的/etc目錄
- system/font目錄,字體
- system/framework目錄,android框架,是java實現,在dalvik虛擬機下支持用戶java開發的框架
- system/lib目錄,android本地共享庫,都是so文件,是c、c++編譯的本地共享庫
- system/media目錄,一些媒體文件,比如bootanimation.zip,壓縮包裡面是一些png圖,用於開機動畫,替代這些可以改變開機畫面,audio目錄下是一些聲音文件,用於鈴聲和通知等
其實,本文介紹的定制ROM主要步驟是如何將解開的ROM打包簽名,如果只是打包回zip,android是不認的,recovery的時候會在校驗ROM包的時候報錯。在將自定義的apk文件放在system/app目錄下後,還可以改動比如開機畫面,增加自定義鈴聲,增加命令(在system/bin下)等,然後還是要打包回zip文件。然後,需要使用簽名工具對zip包做簽名,簽名工具可以在:http://androidforums.com/developer-101/8665-how-signing-roms.html
下載。需要註冊用戶登錄才能下載。下載的工具是windows下執行的。運行:autosign.bat
第一次需要設置CLASS_PATH,將testsign.jar加進去,設置過程很簡單,首先要輸入2:
然後它會猜你的testsign.jar就在當前目錄下,因此輸入yes:然後選擇4 ,手工輸入需要簽名的ROM路徑,然後輸入yes,就可以了:簽名過程需要一段時間,需要耐心等待,簽名後並不生成新的文件,是通過修改原文件完成的。