今天繼續吧,前兩天聖蛋,自己也懶了。今天一定要完成這個完結篇吧。
用前幾篇的方法我們同樣可以開啟那個csc.tar.md5檔案,得到的cache.rfs,同樣mount它。具體步驟在你理解前幾篇文章後就不是問題了。
看到的目錄結構如下:
那個command只是文字內容,看看無妨:
嗯,除了wipe資料和快取,就是指向這個sec_csc.zip了,因此,我們要修改的東西肯定在這個sec_csc.zip裡了,其實這個壓縮包的處理已經等同於網上很多資料的recovery模式刷機方法了。
把這個sec_csc.zip解開到乙個目錄下,得到兩個子目錄meta-inf和system。
# mkdir sec_csc # cd sec_csc # unzip ../sec_csc.zip
meta-inf下面的那幾個簽名相關檔案先刪掉。
# cd meta-inf # rm cert.rsa cert.sf manifest.mf
然後進入/system目錄下,現在你可以在這兒放你想要的東西了,media目錄是聯通定製的開關機動畫及關機聲音,etc下有乙個開機聲音,wall*****下是牆紙,這個牆紙還不錯,我保留了。這些東西都可以刪除的,沒關係。
csc目錄下的內容不要動,決定了你的apn及網路配置。不管怎麼說我們還是聯通使用者嘛,所以這些東西我們要的。
現在,我們加一點自己想要的東西吧。如下圖:
新建乙個bin目錄,對應將來手機中的/system/bin目錄,把root需要的兩個檔案放進去,即su和busybox。
再回到meta-inf目錄下,一級級下去找到updater-script,注意名字,還有乙個叫update-script!!!我們要修改的只是updater-script,有er的。修改updater-script如下:
assert(getprop("ro.product.device") == "gt-i5800" || getprop("ro.build.product") == "gt-i5800" || getprop("ro.product.device") == "gt-i9088" || getprop("ro.build.product") == "gt-i9088" ); show_progress(0.100000, 0); show_progress(0.500000, 0); # format("mtd", "system"); mount("mtd", "system", "/system"); package_extract_dir("system", "/system"); set_perm_recursive(0,2000,0755,0755,"/system/xbin"); set_perm_recursive(0,2000,0755,0755,"/system/bin"); set_perm(0,0,04755,"/system/bin/su"); set_perm(0,0,04755,"/system/bin/busybox"); show_progress(0.900000,0); unmount("/system");
從指令碼字面,大概意思都清楚了。無非把/system目錄解開拷進手機,設定一下幾個子目錄的屬性,注意一定要設定一下su和busybox的屬性是04755,在手機上看它的屬性中有s的。只有這樣才能讓其它應用獲取到root許可權,也就是說不單要root能執行su,其它應用被授權後也能執行su,不然就不能真正root成功。
以上修改步驟完成。下面重新打包成zip檔案。
# zip -r sec_csc.zip **
現在需要重新簽名,在網上可以找到乙個auto-sign工具的,這個東西是從aosp中提取出來的,大夥兒都是用它來做update.zip刷機包的。用auto-sign重新簽名這個sec_csc.zip即可。(跨平台的,你也可以拿別的簽名工具來籤,無所謂了,只是這個方便罷了)
總之我們又得到乙個簽名了的sec_csc.zip就可以替換原來的sec_csc.zip了。
剩下的事情就簡單了,把這個sec_csc.zip放回原來的那個cache.rfs中,即用前面文章描述的同樣的方法,把虛擬盤dd到cache.rfs中,再tar,再md5sum,ok。
你又得到乙個csc.tar.md5檔案了。同樣刷機時選用它即可。
好了,收工了,一切就這麼簡單罷了。
掌握了方法,你能做的事情可以比我多,比如修改 /system/framework/framework-res.apk 檔案,你可以修改的,也就修改了手機的ui效果。比如用自己的lanucher替換掉系統的touchwizard,這個替換的東西較多,呵呵。而且,你可以修改i9000,i909我估計也類似吧,沒看過,有興趣的朋友可以試試。
製作三星I9088 刷機ROM的實踐(五)
今天繼續吧,前兩天聖蛋,自己也懶了。今天一定要完成這個完結篇吧。用前幾篇的方法我們同樣可以開啟那個csc.tar.md5檔案,得到的cache.rfs,同樣mount它。具體步驟在你理解前幾篇文章後就不是問題了。看到的目錄結構如下 那個command只是文字內容,看看無妨 嗯,除了wipe資料和快取...
製作三星I9088 刷機ROM的實踐(一)
首先,我們要理解rom的製作其實分為兩個層次 第一層是拿官方的rom做底包,通過解包 修改 打包幾個步驟,製作出自己定製的rom。第二層則基於google的aosp android open source project 從原始碼開始,自己編譯,自己打包得到自製rom。本文要討論的只是第一層的內容,...
製作三星I9088 刷機ROM的實踐(二)
書接上回,今天我們開始討論如何解開這些個刷機包。第二步 解開刷機包 這一步我們要先了解一件事,那個modem phone 是我們不要動的,它決定了手機的基帶部分,解開你也改不了,所以不用也不能修改它。現在的問題是,這個 tar.md5是怎麼回事?很簡單,你用winhex工具 或者其它類似的二進位制編...