教你制作定制版安卓系統(tǒng)_第1頁
教你制作定制版安卓系統(tǒng)_第2頁
教你制作定制版安卓系統(tǒng)_第3頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、教你制作定制版安卓系八(AndroidROM)有點玩機興趣的an droid愛好者,應該對custom ROM這種東西都不陌生,它大 致就 相當于我們封裝定制版pc系統(tǒng)中用到的Ghost (* ? gho)文件。在介紹root權限獲取的時 候,就直接用的 MoDaCo Custom R0作為例子。適用于 Hero比擬好的ROM還 有不少,比 如Drizzy,s Custom HeroROM等等,都可以在 XDA上找到??隙?有不少朋 友感到很好奇, 這些ROM都是怎么做的??紤]到中文社區(qū)相尖資料比擬少,在這里拋磚引玉,大概原理介紹一下。對于第三方ROh來講,通常都包括兩局部 5 一個recov

2、eryimage, 一個update, zipo而大多數(shù)的笫三方 ROM勺特色5就是參加了很多東西5比方superuser程序來 獲得 root 權限 ,busybox 來擴充命令行下的功能,各種各樣的配置文件或者小工 具,比方 默認翻開中文 locale, 等等。這些看似神奇的改動,都是在 update, zip 里面 搞的 ,custom recoveryimage 的主要作用就是引導用戶的操作 5比方讓你先備 份,再應 用 update, zip, 再重啟之類的操作°由于 custom recoveryimage 和 update, zip 的耦 合性很小 5所以不少 cust

3、om ROM直接都用同一個 custom recoveryimage, 這個好似是出 自MoDaCo者之手。 再然后 5我之前的文章已經(jīng)有對 recoveryimage 的簡單講解,所 以這里,我主要介紹一下 update, zip 的制作。如果我們直接把 MoDaCoRO中的update, zip解包,我們會發(fā)現(xiàn)有一個 boot, img,-個data文件夾,一個system文件夾,一個METATN文件夾。這個 data文件夾放 的是init.rc, 而本來在系統(tǒng)中, init. rc 就是在 data LI 錄下的。半 然,兩者的作 用不一樣,這里的init. rc主要作用是開機執(zhí)行你希望

4、執(zhí)行的命令,比方MoDaC的 init ? rc就是install busyboxo而值得詳細說明的5就是system文件夾。MoDaCoRO版I本的system下有一系 列作者希望放到系統(tǒng)中的工具,對于 apk 文件 , 就放到 app 下,工具就放到 bin 和 xbin下,依此類推。換句話說 system 或者 data 這個 H 錄層次結構是取決于你自己的,你 希 望放的東西屬于什么,應該運行在 online 系統(tǒng)的什么 LI 錄下 , update, zip 里面就 應該是 有相應的目錄路徑,然后東西就放在里面。具體點,我們現(xiàn)在要依樣畫葫蘆,搞一個新的 update, zip, 那么

5、第一步就是首先 建 立一個文件夾mkdir new-update好,假設我新 update, zip 的作用就是預裝我自己的一個程序 ,my? apk, 那么,我 建 立對應的子目錄mkdir -p new-update/system/appcp my. apk ! S這樣, system 目錄就完成了。但是這時 , update, zip 的目錄層次還沒完,我們看MoDaCoROM的update, zip 中有文件夾叫META -INF這個文件夾很尖鍵,除了根 L1錄 下的三個文件外J里面層層LI錄,就包括了一個文件,叫 update-script,內容如 下show_progress 0.

6、 1 0 copy_dir PACKAGE : system SYSTEM : set_perm_recursive 0 0 0755 0644 SYSTEM : xbinset_perm_recursive 0 0 0755 0644 SYSTEM-sdset_perm 0 0 04755 SYSTEM-bin/su set_perm 0 0 04755 SYSTEM-bin/a2sdset_perm 0 0 04755 SYSTEM*xbin/busybox copy_dir PACKAGE'data DATA* show_progress 0. 2 0format BOOT*wr

7、ite_raw_image PACKAGE'boot ? img BOOT*show_progress 0. 2 10這里面的內容, 大局部是針對你要做的修改設置的七匕如 copy_dir PACKAG:EsystemSYSTEM:就是把 system 中新增的工具拷貝到 上,然后set_perm_recursive0 0 0755 0644 SYSTEM*xbinset_perm_recursive 0 0 0755 0644 SYSTEM : sd set_perm 0 0 04755 SYSTE:M bin/suset_perm 0 0 04755 SYSTEM-bin/a2sd

8、 set_perm 0 0 04755 SYSTEM-xbin/busybox就是設置MoDaCo ROlM新增程序的權限,然后 copy_dir PACKAGE*data DATA *把 data 下的內容就是那個 init. rc 復制到 上,然后format BOOT:write_raw_image PACKAGE:boot ? img BOOT*刷 boot 分區(qū) o那我們這里沒有這么多新增的東西,應該怎么寫呢?copy_dir PACKAGE:system SYSTEM*set_perm_recursive 0 0 04755 SYSTEM :app/my. apk就可以了。你當然還

9、可以做一些別的事惜,比方加一個FORMAT DAT之類的二 開個玩笑,千萬別這個干,不然你的數(shù)據(jù)就全沒了。好, 那么也就是說,我們要在自己的 new-update 口錄下也建一個 /META- INF/com/google/U 錄,然后把新的 update-script 扔進去°完了么?差一點。 其實如果你沒有別的需求了, 那么就完了, 可以把下面這一小塊 跳 過。下面這一小塊 5是尖于 boot, img 的°在如何修改 Android 系統(tǒng)的 Ramdisk 以及 boot 鏡像文章中,我們談到,如果刷 boot 鏡像有問題,就要用別的方法讓系統(tǒng) boot 我們自己的

10、bootimage 了,這個別的方法 5 自然就是用 update, zip 了。MoDaCoRC版I本的 update, zip 也包括了一個 boot, img, 但是如果我們有出于各種需求自己修改的 boot, img, 自然就可 以替換掉原來的了。當然注意,如果加了 boot, img, 那么 updatescript 里面就不能漏 掉write_raw_image PACKAGE-boot, img BOOT :這句。好,至【 J 現(xiàn)在 ,我們的 new-update U 錄下有/system/app/my. apk/META-INF/com/google/update-script

11、/META-INF/MANIFEST. MF/META-INF/CERT. SF/META-INF/CERT. RSAboot, img恩,那么就進入打包階段。你可能會問,這有什么難的,直接 zip 一下不就得 了。 如果要是這么簡單就好了,你打包后,必須把你的內容都 sign 一下,得到相應的 cert, 才能在 fastboot 模式中被成認并成功刷機。在 sign 你的文件之前,先做這么兒件事xxxx xxxx xxxxxxxx o 什 么意思扌 J 包。進入 update 文件夾, zip update, zip xxx呢,就是只把你需要的文件打包,不要用 ? /* 作為參數(shù)。而且相對

12、路徑最好是在 update 下面,不要在外面用zipupdate, zip ? /update/* 這種命令打包去 sun 網(wǎng)站下載最新的 jre下載這個文件 testsign一定要用 JRE1. 6. 0. 16 或者更高 , 我知道這個有點惡心, 但是提供下載的 testsigh, jar 就是按照這個版本或者更高編譯的,你用老版本就運行不了 °好,下下來以后,執(zhí)行這個命令Vjrel. 6. 0_16/bin/java -classpath testsign_path/testsign, jar testsign update, zipupdate-signed, zip稍微講解一下, java 程序是最新 jre 下的, testsign_path 是你放 testsign, jar 的地方,建議放到 sdk 的 tool 錄下。 update 是待 sign 文 件 update -signed 是指 定的 生成文件名。sign 執(zhí)行完后,用 unzip -1 看 , 會發(fā)現(xiàn)/META-INF/MANIFEST. MF/META-INF/CERT? SF/META-INF/CERT? RSA候不包括這三個文件 ,sign 完乂

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論