制作Android ROM有两种方法:
本文介绍的是在已有ROM基础上的定制步骤。
我这里使用的机器是Nexus One,于是下载了第三方的ROM,这里以安卓农夫ROM 2.4为基础。当然也可以用CyanogenMod提供的ROM,实际上安卓农夫的ROM就是在该ROM基础上做的定制。
解压缩ROM,比如安卓农夫ROM 2.4文件名为:
n1_2.4_signed 2.zip
解压缩后,可以看到目录中:
其实,本文介绍的定制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,就可以了:
签名过程需要一段时间,需要耐心等待,签名后并不生成新的文件,是通过修改原文件完成的。
原文转自:http://marshal.easymorse.com/archives/3622
///
第一步:首先我们要有一个ROM.不管是官方还是第三方ROM,都是.zip的压缩包.如下图
第二步:我们打开压缩
包(已TSM小组做的双4.0
ROM为例),见下图
我们可以看到,压缩
包内有3个文件夹外加一个boot.img
其中:
data文件夹为应用程序所在的文件夹,我们直接下载的APK安装在内存卡上时,都是安装在data文件夹下的,该文件夹内的程序都可以直接卸载的.
meta-info文件夹为签名文件夹,什么是签名文件夹我会在后面的教程写出来.
system为系统程序文件夹,比如htc sense等一些无法卸载只能用ROOT后用RE删除的都在这里,大家应该都不陌生了,我们主要的工作目标都在这个system文件夹内
boot.img这个是内核文件,勿动.
第三不:我们进入system文件夹看看.
app文件夹:系统程序文件都在这里,我们删除一些系统自带程序都是用re来这里删除,具体不解释了.
如果我们需要精简自动自带程序,可以直接在压缩
包内选中app文件夹下的.apk文件及相应的.odex文件即可
PS:2.3.5的
rom没有.odex文件,4.0系统引入odex文件.
如果我们想添加一些程序到系统程序内,则直接把.apk及.odex文件拖到压缩
包内app文件夹即可.
PS:在4.0下,有些程序不把.odex一起放到app文件夹内,会造成程序无法使用.关于.odex文件我也还在研究中,就不多说什么了.
bin文件夹:这里比较复杂,对于.net程序员,bin文件夹应该不陌生,我们的dll文件都在bin里面,这里的bin你也可以这么理解,正常我们不动他,比如busybox就是放在这里的.
customoze:用户自定义设置的地方,建议没有xml知识和一定汇编语言知识这里勿动.比如开机画面,开机音乐甚至
包含一些输入法切换设置等都可以在这里修改xml文件进行修改.
etc:不详...不用动
fonts:字体文件夹
主要是这两个 DroidSans.ttf 以及 DroidSansFallback.ttf,其中DroidSans.ttf为英文字体,DroidSansFallback.ttf为中文字体,我们只需要把找到的合适的字体文件修改为这两个文件名,然后拖到压缩
包内字体文件夹下即可完成字体替换的工作.
frameworks:看名字很像是框架结构文件夹,如我们修改的电池电量显示都在这里.正常不动.
lib:还在研究.....不动.
media:系统自带的铃声,短信声等媒体文件都在这里了.
进入audio文件夹我们可看到如下文件夹:
alarms:闹钟
ringstone:来电铃声
notifications:通知音
ui:锁屏音,触摸音等系统UI的声音都在这
我们可以把自己喜欢的铃声等直接拖到压缩
包相应文件夹内即可
比放在卡内的好处就是,当你挂载手机内存卡的时候,来电铃声等不会恢复默认.
tts:多语言支持(应该是)
一下还有另外4个文件夹,我们都不动了....主要修改就在以上.
写到这里,大家应该基本了解我们应该如何精简
ROM了吧.
下面是一些个性化设置
1:修改开关机画面及铃声
进入customize文件夹---CID---default.xml
可以选中default.xml然后点解压缩,这样只会解压出default.xml这一个文件.使用记事本打开(本人使用vs2010,都是一样的)
直接在记事本内按ctrl+f,在弹出的查找窗口里输入BootAnimation查找到如下代码
其中bootanimaion为开机,我们可通过修改后面animation的内容改变开机画面(可从别的
rom提取压缩
包),audio为开机音乐.HTC默认将开关机的画面及音乐放在system/customize/resource文件夹内
shutdownanimation为关机,image_png为关机画面文件,fps为关机画面帧数.
以上修改不建议修改开关机文件所放置的位置,我们正常将别的
rom提取的开关机画面的.zip压缩
包直接重命名后丢到resoource文件夹下.
另外:如果不想要开关机动画也请勿删除以上代码,可以直接将htc_bootup.zip这里改名为一个不存在的文件即可.如htc_bootupxxx.zip.
default.xml的修改就到此为止,熟悉xml代码的好好看看这个,可以发现不少好玩的东东哦.
精简完系统自带文件,又修改好开关机画面,现在还差啥?没错,就是关于里面的软件版本信息了,如果你看到一个你的软件版本叫做"刺魂专用",那可是相当刺激的事情
我们进入system文件下,往最下方看,有没看到一个build.prop
把buuld.prop单独解压出来后用记事本或notepad+打开(这里我推荐使用notepad+,可自己下载一个,非常好哦那个,当然,由于本人有vs2010了,所以都用vs2010打开了)
通过ctrl+f查找
ro.build.version.release=4.0.3 (安卓版本,可修改成5.0内测版 )
ro.build.sense.version=4.0 (HTC SENSE版本,好吧...你又可以改为5.0内测版了)
ro.product.version=TSM UltimeKangBang 3.0.1 (软件版本,好吧,这里为刺魂大大万岁专用版)
主要就说这3个就好了
其余的build.prop的内容可自己慢慢研究,可改的地方很多哦.
最后记得把修改后的build.prop丢回压缩
包覆盖原始文件.
PS:不同的
ROM,这个build.prop的地方也不一样,比如我原来VC官方RUU提取的
rom,build.prop就在根目录下.system没找到的其他地方好好找找哦.
如上,当你把以上几个地方都自行修改完,那么一个你自制的个性化
ROM就出来了.
|