如何制作或定制Odin刷机包ROM
定制ROM对于玩机者来说是高级玩法,与广大机友一起玩,互动性极强,乐趣无穷。通过定制ROM,你可以简化原来的ROM,删除原包中的某些应用程序,同时增添一些你喜欢的新的应用程序,可以美化主题、桌面、设置等,进行Root和其它操作,等等。你也可以修改I9000的刷机包或其他ROM,移植内核或基带,从而定制成I897的ROM。最后打包,为自己后来刷机用或发布共享。
现在进入这一讲的正题。
一般说来,制作ROM可以简单地分为两个层次:
1)定制ROM:是拿官方的ROM或他人的ROM做底包,通过解包、修改、编辑、打包几个步骤,制作出自己定制的ROM。
2)自制ROM:是基于Google的安卓开源系统(Android Open Source Project,简称AOSP),从源码开始,自己编译,自己打包得到自制ROM。
本讲要描述的是第一层次:如何定制ROM。更具体一点:就是如何制作或定制Odin刷机包ROM。现在网上流行的I897和I9000的刷机包主要还是基于第一层次的定制ROM。而HTC的手机则有不少是基于第二层次制作的ROM包。
要定制出高质量的ROM,需要很多基础知识和积累很多ROM需要的素材。我的第三讲和第四讲都是为了现在定制ROM做的铺垫,打基础。在教程向下进行的过程中,我假定读者已经掌握了前两讲的内容,尤其是第四讲的RFS文件的解包和打包。
我把定制ROM的过程分成以下几个步骤:
1.底包ROM的解包
2.RFS文件的解包
3.RFS文件的修改、编辑、美化
4.RFS文件的打包
5.基带和内核的移植及其它
6.新刷机包ROM的打包
7.测试和发布
1. 底包ROM的解包
1)解RAR/ZIP压缩包
I897和I9000的ROM通常以压缩包形式传播。文件形式为 .rar或 .zip。不管是哪一类,解压缩包这一步可以在Windows下进行。所用的解压工具是WinRAR,或WinZIP,或7-zip等。解压后得到TAR文件包(刷机包)。
在通常的ROM中,除了PIT文件外(有的ROM中没有这个文件),所有刷机文件都打包在一个TAR文件中(例如:ROM.tar),也有的刷机包由三个TAR文件组成(PDA.tar,CSC.tar和PHONE.tar)。不管是哪一种,它们所包含的刷机文件内容是相同的,只是文件打包方式不同而已。
2)解TAR包
TAR包可以在Windows下用WinRAR来解,也可以在Linux下来做,视方便而定。
如果定制ROM是在Linux系统下进行ROM打包,我建议TAR包在Linux下来解,这样比较方便,因为你需要的所有刷机文件都放在那里。为此,创建一个目录/home/sunny/ROM,把ROM.tar或PDA.tar拷贝到这个目录。然后在该目录下产生一个子目录PDA。把ROM.tar或PDA.tar解包到/home/sunny/ROM/PDA。
解开后会看到有一个文件factoryfs.rfs,对应手机里 /system 目录的内容,修改和美化工作都在这里。这个在第四讲里已经详细讲过了。
2. RFS文件的解包
这个步骤及其操作在之前已经详细讲过了,这里不再重复。需要的自己搜一下。
3. RFS文件的修改、编辑、美化
同上。这个步骤及其操作在第三讲和第四讲里已经详细讲过了,这里不再重复。
4. RFS文件的打包
同上。这个步骤及其操作在第四讲里已经详细讲过了,这里不再重复。
好了!到此,我们假定factoryfs.rfs和其他的的RFS文件经过2,3,4这几步都已经制备好了。
5. 基带和内核的移植及其它
现在是你考虑用什么基带和采用哪一个内核的时候了。这个没有什么好讲的,主要是你平时就要注意收集基带和内核,多看些评测,看对那个基带的评价好。内核主要是要跟进最新的。剩下的事就要劳你辛苦了,挨个测试吧,看那个能用,尤其是能与你要定制的ROM匹配。你为大家做ROM,是无尝的奉献,当然要有你的这些幕后工作。
此外,你现在也要考虑param.lfs,或者同时增加或同时移除Bootloader boot.bin和Sbl.bin文件等。
6. 新刷机ROM的打包
在这一步里,把所有准备好的刷机文件打包成TAR刷机包ROM,供刷机用。下面介绍两种ROM打包方法。
1) 在Linux操作系统下进行
如果你有Linux环境和熟悉Linux操作系统,这ROM打包对你来说就是小菜一碟。
ROM打包涉及两步:生成TAR包和md5签名。操作步骤如下:
a) 把所有要打包进ROM的文件都复制到一个文件夹内,例如:/home/sunny/XXJVQ
这些刷机文件包括:zImage,boot.bin,Sbl.bin,param.lfs,factoryfs.rfs,cache.rfs,dbdata.rfs 和modem.bin。
b) 在超级用户终端/home/sunny/XXJVQ,输入:
# tar -cf New-ROM.tar zImage boot.bin Sbl.bin param.lfs factoryfs.rfs cache.rfs dbdata.rfs modem.bin
# md5sum -t New-ROM.tar 》》 New-ROM.tar
# mv New-ROM.tar New-ROM.tar.md5
第一步是TAR打包,第二步是md5签名。打包和签名结束。New-ROM.tar.md5就是最后定制好了的Odin刷机包ROM了。
2) 在Windows操作系统下进行
考虑到有些机友没有Linux环境,这里介绍一种在Windows下进行ROM打包的方法,很实用。需要你在你的Windows上安装一个虚拟Linux机。这方面的软件很多,自己去Google去吧。这里,我们用Cygwin来完成(完全免费),它是一个在Windows平台上运行的Linux模拟环境,可以实现大部分Linux的操作。幸运的是,我们ROM打包所需要的所有东西都在。
由于你在模拟的Linux环境下,所以ROM打包的所有操作都与上述在纯Linux环境下完全相同。为清楚起见,这里再重复一遍:
a)在C:/cygwin/home/sunny下创建一个文件夹:XXJVQ。
b)把所有要打包进ROM的文件都复制到这个文件夹内。
这些刷机文件包括:zImage,boot.bin,Sbl.bin,param.lfs,factoryfs.rfs,cache.rfs,dbdata.rfs 和modem.bin。
c)打开Cygwin 的 bash shell,提示符是“$”。这就是模拟的Linux环境。在“$”下输入Linux命令:
$ tar -cf New-ROM.tar zImage boot.bin Sbl.bin param.lfs factoryfs.rfs cache.rfs dbdata.rfs modem.bin
$ md5sum -t New-ROM.tar 》》 New-ROM.tar
$ mv New-ROM.tar New-ROM.tar.md5
第一句是TAR打包,第二句是md5签名。第三句是改文件名,可以省略。New-ROM.tar.md5就是最后生成的,可供刷机用的ROM了!
注释:如果要把ROM打包成3个TAR文件。打包过程和命令与上述完全相同,只不过是分别要进行3次而已。
CSC.tar中包含cache.rfs
PHONE.tar中包含modem.bin
PDA.tar中包含zImage,boot.bin,Sbl.bin,param.lfs,factoryfs.rfs和dbdata.rfs。
7. 测试和发布
Odin刷机包ROM做好了,最后一步就是刷机测试。检查你计划要定制的所有内容都在,所有功能都正常。在可能的范围内,把所有按键都扫一遍(这无疑需要很多时间)。如果有问题的话,要回头从第二步重新做起,直到测试满意,达到计划要求。
一切OK的话,定制的Odin刷机包ROM就做好了,可以收工了。如果你觉得有发布价值,就上传发布吧!
8. 注意事项
1)定制ROM是一项复杂和细致的工作,要求ROM制作这有良好的工作素质和习惯。在动手之前,先做个定制计划,逐一进行。
2)在第三步修改/system的内容时,要遵循“先删后添”的原则。这是由于/system的大小限制为276.3MB。如果先添加应用程序,可能会出现“磁盘已满”或“空间不足”的问题。
3)在TAR包的打包时,文件名的排列顺序决定了刷机时文件的刷入顺序。要尽量把boot.bin和Sbl.bin挨在一起,以避免不良刷机后果。建议的打包顺序为zImage boot.bin Sbl.bin param.lfs factoryfs.rfs cache.rfs modem.bin,其中zImage在先测试验证USB线是否正确连接,后面紧跟着把boot.bin 和Sbl.bin刷入手机。
4)为了避免刷机变砖的可能性,boot.bin和Sbl.bin必须同时加或同时不加。千万不要只加其中的一个。
热门刷机包top10
- 联想s960刷机包_救砖包_官方包_联想S960_4.2.2_VIBEROM_V1.0_1347_3_ST_S960
- 小米 M4i刷机包_救砖包_官方包_小米小米手机4i_5.0.2_V7.1.3.0.LXICNCK(2015561)
- HTC G12 基于欧版2.10.401.9掘墓者 Saga.DearTanker.E1
- 联想a750e刷机包_救砖包_官方包_联想A750_4.0.3_A750_S306_120530
- 奥克斯v926b刷机包_救砖包_官方包_奥克斯V926B_4.0.4_V926B_09_20121103_HST
- 小米红米刷机包 联通版 MIUI9开发版 杜比音效 悬浮球 主题全免 华美风格
- 优购uoogou_x3刷机包_救砖包_官方包_优购X3_4.2.2_M9E2.QDX.YG_X3.HP.W.SS1.0103.V3.01
- 波导BIRD A11刷机包_救砖包_官方包_波导BIRD A11_4.0.4_MocorDroid2.3.5_Trout.W12.20_P20.01
- 小米 红米Note 4刷机包_救砖包_官方包_小米红米Note4(全网通)_6.0_V8.0.11.0.MBFCNDG.2016050
- 三星I9300刷机包 腾讯ROM TOS系统内测泄露版 全新体验 ROM下载之家首发
热门刷机教程top10
热门ROM资讯top10
热门手机刷机包
- 金立 S10CL刷机包
- 三星 A800YZ刷机包
- 金立 S11刷机包
- 酷派 8022刷机包
- 泰尔龙 EA910刷机包
- 三星 W2013刷机包
- 三星 Galaxy S Advance (i9070)刷机包
- 爱我 Lovme X18+刷机包
- 星维 A8刷机包
- 华为 Y500T刷机包
- 三星 J727P刷机包
- 步步高 VIVO E1t刷机包
- OPPO R5 (R8109/双4G)刷机包
- 索尼 LT15i刷机包
- 卓酷 ZUOKU_K7刷机包
- 英特奇 intki-E88刷机包
- 飞利浦 V989刷机包
- HTC M9 Verizon刷机包
- 首家 T100刷机包
- 索尼 Xperia Z3 移动版 (L55T)刷机包
热门刷机包top10
- 联想s960刷机包_救砖包_官方包_联想S960_4.2.2_VIBEROM_V1.0_1347_3_ST_S960
- 小米 M4i刷机包_救砖包_官方包_小米小米手机4i_5.0.2_V7.1.3.0.LXICNCK(2015561)
- HTC G12 基于欧版2.10.401.9掘墓者 Saga.DearTanker.E1
- 联想a750e刷机包_救砖包_官方包_联想A750_4.0.3_A750_S306_120530
- 奥克斯v926b刷机包_救砖包_官方包_奥克斯V926B_4.0.4_V926B_09_20121103_HST
- 小米红米刷机包 联通版 MIUI9开发版 杜比音效 悬浮球 主题全免 华美风格
- 优购uoogou_x3刷机包_救砖包_官方包_优购X3_4.2.2_M9E2.QDX.YG_X3.HP.W.SS1.0103.V3.01
- 波导BIRD A11刷机包_救砖包_官方包_波导BIRD A11_4.0.4_MocorDroid2.3.5_Trout.W12.20_P20.01
- 小米 红米Note 4刷机包_救砖包_官方包_小米红米Note4(全网通)_6.0_V8.0.11.0.MBFCNDG.2016050
- 三星I9300刷机包 腾讯ROM TOS系统内测泄露版 全新体验 ROM下载之家首发
热门刷机教程top10
热门ROM资讯top10
热门手机刷机包
- 金立 S10CL刷机包
- 三星 A800YZ刷机包
- 金立 S11刷机包
- 酷派 8022刷机包
- 泰尔龙 EA910刷机包
- 三星 W2013刷机包
- 三星 Galaxy S Advance (i9070)刷机包
- 爱我 Lovme X18+刷机包
- 星维 A8刷机包
- 华为 Y500T刷机包
- 三星 J727P刷机包
- 步步高 VIVO E1t刷机包
- OPPO R5 (R8109/双4G)刷机包
- 索尼 LT15i刷机包
- 卓酷 ZUOKU_K7刷机包
- 英特奇 intki-E88刷机包
- 飞利浦 V989刷机包
- HTC M9 Verizon刷机包
- 首家 T100刷机包
- 索尼 Xperia Z3 移动版 (L55T)刷机包