制作Android ROM有两种方法:
编译Android源代码的方法,这个比较复杂,以后再介绍; 在已有的ROM基础上制作或者叫定制自己的ROM。
本文介绍的是在已有ROM基础上的定制步骤。
我这里使用的机器是Nexus One,于是下载了第三方的ROM,这里以安卓农夫ROM 2.4为基础。当然也可以用CyanogenMod提供的ROM,实际上安卓农夫的ROM就是在该ROM基础上做的定制。 解压缩ROM,比如安卓农夫ROM 2.4文件名为: n1_2.4_signed 2.zip 解压缩后,可以看到目录中:
boot.img文件,这是系统的镜像,包括Linux内核以及系统启动的一些基本文件。 META-INF目录,这里主要有系统更新脚本,路径是:META-INF/com/google/android/updater-script
system/app目录,系统自带的应用程序都放在这个目录下,比如日历、联系人、gmail等,你可以把自己的apk文件放在该目录下,这样就可以在刷ROM的时候直接安装上 system/bin目录,系统命令,可以通过adb shell登录后执行,比如top system/etc目录,类似linux的/etc目录 system/font目录,字体
system/framework目录,android框架,是java实现,在dalvik虚拟机下支持用户java开发的框架
system/lib目录,android本地共享库,都是so文件,是c、c++编译的本地共享库 system/media目录,一些媒体文件,比如bootanimation.zip,压缩包里面是一些png图,用于开机动画,替代这些可以改变开机画面,audio目录下是一些声音文件,用于铃声和通知等
其实,本文介绍的定制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,就可以了:
签名过程需要一段时间,需要耐心等待,签名后并不生成新的文件,是通过修改原文件完成的。
因篇幅问题不能全部显示,请点此查看更多更全内容