如何製作ROM

2021-06-01 05:10:47 字數 2082 閱讀 7805

如何製作android rom

有點玩機興趣的android愛好者,應該對custom rom這種東西都不陌生。我介紹root許可權獲取的時候,就直接用的modaco custom rom作為例子。適用於hero比較好的rom還有不少,比如drizzy』s custom hero rom等等,都可以在xda上找到。肯定有不少朋友感到很好奇,這些rom都是怎麼做的。考慮到中文社群相關資料比較少,在這裡拋磚引玉,大概原理介紹一下。

對於第三方rom來講,通常都包括兩部分,乙個recovery image,乙個update.zip。而大多數的第三方rom的特色,就是加入了很多東西,比如superuser程式來獲得root許可權,busybox來擴充命令列下的功能,各種各樣的配置檔案或者小工具,比如預設開啟中文locale,等等。這些看似神奇的改動,都是在 update.zip裡面搞的,custom recovery image的主要作用就是引導使用者的操作,比如讓你先備份,再應用update.zip,再重啟之類的操作。由於custom recovery image和update.zip的耦合性很小,所以不少custom rom直接都用同乙個custom recovery image,這個好像是出自modaco作者之手。再然後,我之前的文章已經有對 recovery image的簡單講解,所以這裡,我主要介紹一下update.zip的製作。

如果我們直接把modaco rom中的update.zip解包,我們會發現有乙個boot.img,乙個data資料夾,乙個system資料夾,乙個meta-inf資料夾。這個data資料夾放的是init.rc,而本來在系統中,init.rc就是在data目錄下的。當然,兩者的作用不一樣,這裡的init.rc主要作用是開機執行你希望執行的命令,比如modaco的init.rc就是install busybox。

這樣,system目錄就完成了。但是這時,update.zip的目錄層次還沒完,我們看modaco rom中的update.zip中有資料夾叫meta-inf,這個資料夾很關鍵,除了根目錄下的三個檔案外,裡面層層目錄,就包括了乙個檔案,叫 update-script,內容如下

show_progress 0.1 0

copy_dir package:system system:

set_perm_recursive 0 0 0755 0644 system:xbin

set_perm_recursive 0 0 0755 0644 system:sd

set_perm 0 0 04755 system:bin/su

set_perm 0 0 04755 system:bin/a2sd

set_perm 0 0 04755 system:xbin/busybox

copy_dir package:data data:

show_progress 0.2 0

format boot:

write_raw_image package:boot.img boot:

show_progress 0.2 10

這裡面的內容,大部分是針對你要做的修改設定的。比如

copy_dir package:system system:

就是把system中新增的工具拷貝到手機上,然後

set_perm_recursive 0 0 0755 0644 system:xbin

set_perm_recursive 0 0 0755 0644 system:sd

set_perm 0 0 04755 system:bin/su

set_perm 0 0 04755 system:bin/a2sd

set_perm 0 0 04755 system:xbin/busybox

就是設定modaco rom中新增程式的許可權,然後

copy_dir package:data data:

把data下的內容(就是那個init.rc)複製到手機上,然後

format boot:

write_raw_image package:boot.img boot:

刷boot分割槽。

那我們這裡沒有這麼多新增的東西,應該怎麼寫呢?

就可以了。你當然還可以做一些別的事情,比如加乙個format data之類的^_^開個玩笑,千萬別這個幹,不然你的資料就全沒了。

如何定製自己的華為ROM

解析的工具 網上有幾個現成可用的程式 指令碼,如 huaweiupdateextractor 以及 split updata.pl,但是 huaweiupdateextractor 為exe,不方便研究的童鞋,split updata.pl 需要 安裝64位的 perl,不然會報 記憶體不夠 的錯,...

如何製作倒影

在photoshop影象製作過程中,特別是進行影象合成時,有時需要製作影象的倒影。使用photoshop製作倒影很簡單,下面舉例說明。1.開啟兩幅小狗影象,如上面前兩幅影象所示。我們把第二幅圖中的小狗新增到第一幅圖中,讓它們做個伴。由於是在水邊,所以在製作時要考慮給第二隻小狗製作水中倒影。2.切換到...

如何製作外掛程式

如何製作外掛程式 4截獲api 上面的技術如果可以靈活運用的話我們就不用截獲api函式了,其實這種技術是一種補充技術.比如我們需要截獲socket以外的函式作為我們的用途,我們就要用這個技術了,其實我們也可以用它直接攔截在socket中的函式,這樣更直接.現 在攔截api的教程到處都是,我就不列舉了...