当前位置:首页 >> 信息与通信 >>

安卓刷机包ROM制作教程


[教程]本帖教你如何亲自打造自己喜欢的华为 C8650 ROM 玩 Android 手机可为个层次: 1。最高境界:像大神这样的,对 Android 系统十分熟悉,能够编写系统代码 2。大大境界:像 Liudidi、小白小仙等大大,能够修改代码和编译,需要熟悉 linux 系统和具备编程知识 3。高手境界:能够在非代码级修改 ROM,美化 ROM。 4。普通境界:会玩,会设置等

前两个层次要花大力气学习,向我这样的懒人看样子是达不到了,只能努力达到第 三层。这里我想跟大家分享一下我的修改 ROM 的方法,其中大部分是总结与论坛中其他帖 子,有一小部分是自己总结的经验。 修改 ROM 大致可分为:精简、增补、美化三类这里主要讨论的是精简和增补两个方面。本 帖子教你如何打造自己喜欢的 rom!! !!实战性很强哦··· ··· 注明:本帖来自安卓网·· · ============================= 一。首先我们来看看 ROM 中到底有些什么: 用 WinRAR 打开刷机包后可以看到几个目录,下面列出了和我们有关的几个目录和 说明 dev_data/apps/ : 系统程序的 apk 文件目录,相当于刷机后 "/data/app_s/",这里 的程序刷机后不可卸载 dev_data/app/ : 用户程序 apk 文件目录,相当于刷机后 "/data/app/",这里 的程序刷机后可卸载。 (10 月 28 日以后的版本中才有,以前的版本大家可以自己加这个目 录) META-INF/com/google/android/ : 刷机脚本文件 system/etc/: 存放了一些配置文件 system/etc/permissions/ : 和软件权限有关,部分补丁需要在这个目录中添加文 件 system/lib/ : 系统程序的库文件存放位置 ============================= 二。再来认识一下刷机脚本文件 用 recovery 刷 机 时 , 刷 机 过 程 由 脚 本 文 件 控 制 。 脚本文件就是压缩包中 META-INF\com\google\android 目录下的 update-script 文件,用文本编辑器可以打开。 脚本文件中有这么几条语句是我们关心的 (1)show_progress 0.1 0 :显示进度条 这是用来显示刷机进度条的,前面的 0.1 表示进度条的位置,可以改为别的数值 (小于 1) 。后面的数字不清楚是什么含义,大体上除了最后一条为 10,其他都为 0。有些 ROM 在刷机时会出现刷机完成了进度条才走到一半多点,大家可以试试把最后一句改为 show_progress 0.8 10,进度条就可以走到底了。 (2)几个关键字

(A)"SYSTEM:" 代表刷机后的系统目录 = "/system/" (B)"INTERNAL:" 代表刷机后的 /data 目录 = "/data/" (C)"PACKAGE:" 代表压缩包的根目录 例如 "SYSTEM:etc/ " 相当于刷机后的 "/system/etc/" 目录 "PACKAGE:dev_data" 相当于压缩包中的 dev_data 目录 (3) copy_dir PACKAGE:dev_data INTERNAL: copy_dir 是用来复制目录的,前一个参数是要复制的目录,后一个参数是 复制到那里。 例如 copy_dir PACKAGE:dev_data INTERNAL: 是用来把 ROM 压缩包中 dev_data 目录中的东西复制到刷机后的"/data/"目录下 (4)set_perm_recursive 0 2000 0755 0755 SYSTEM:bin 设置目录或文件权限的,使用方法和 linux 中设置权限的方法类似。 (5)delete SYSTEM:app/YouTube.apk 删除文件,这个一般用不到,要删除的话,直接删就是了。 好了,可以动手精简和增加程序了 ============================= 二。精简系统程序 所谓精简实际上就是删除系统程序,我们用不到的那些程序可以删除掉。删除这些 程序好处在于(1)有些东西是我们用不到的,显示在程序列表中很烦人,如果这样的程序 过多也会导致打开程序列表过慢。 (2)有些程序启动后会占用内存而我们又用不到。例如, 短信拦截等。 (3)有些程序不想用原 ROM 中自带的,想换个别的,例如不喜欢 ADW,改 用 LAUNCH PRO 等。 精简的方法很简单,用 WinRAR 打开 ROM,进入 dev_data\apps 中找到不要的程序,删 除。 那些程序可以精简:这个问题有很多帖子都提到了,大家可以搜一搜,比如下面几个帖 子 帖子地址我给你删除了!善用论坛搜索功能!伸手也要做个好伸 手党! 给你置顶几天! ! ============================= 三。添加程序 添加程序有两个方法,一是把程序添加为系统程序,二是添加为用户程序。 把程序添 加为系统程序的好处在于执行速度快(大家这么说的,我好像没有体会到) ,缺点是不能直 接卸载,只有通过 RE 等工具删除。其实用 RE 直接删除系统程序 APK 文件时并非都卸载 干净了,不信大家可以看看/data/data/这个目录,是不是每个程序都对应了一个目标,其目 录名和程序包的名称相同(不是 XXX.APK 这个 XXX) 。 1。添加系统程序: 添加系统程序方法最简单: (1)用 WinRAR 打开 ROM 压缩文件,进入 "\dev_data\app_s" 这个目录,把要添

加的程序的 APK 文件复制进去。 (2) WinRAR 打开要添加进去的 APK 文件看看 用 “\lib\armeabi” 目录中是否有.so 结尾的文件,它们是程序运行时需要用到的库文件,有的话把他们复制到压缩包中的 “system/lib/”目录中。有些童鞋在修改 ROM 的时候添加的程序无法执行,大多属于这个 情况。例如新版本的谷歌拼音输入法。 2。添加用户程序: 添加用户程序稍微麻烦点,但是刷机后可直接卸载。如果用的是 10 月 28 日以后 的 ROM,直接把 apk 拖入"dev_data/app/"目录中。这一步很简单,麻烦的是 apk 中有库文件 的情况。 简单处理方法同添加系统程序中的第 2 步, 这种方法的缺点是卸载时库文件还会保 留在“system/lib/”中,好在大多数程序都没有库文件,少数程序保留下来的库文件并无大 碍。高级点的方法是通过写脚本进行安装。 10 月 28 日以前的 ROM 在“dev_data/”中没有 app 这个目录,大家可以自己建立 (winRAR 中点击右键,选创建一个新文件夹) ,建立好目录后要在刷机脚本中设置目录属 性: 在刷机脚本中找到这一段: copy_dir PACKAGE:dev_data INTERNAL: set_perm 1000 1000 0771 INTERNAL:app_s 在其后加上这一句: set_perm 1000 1000 0771 INTERNAL:app 其中第一句是把 ROM 中 dev_data 目录中的所有东东复制到/data 目录下 第二句是设置 app_s 的权限 我们加的那一句是设置 app 的权限 接下来可以修补,调整 ROM 了 ============================= 四。firstboot 脚本 要对 ROM 进行高级点的设置,可以利用 firstboot.sh 脚本。firstboot.sh 脚本在 ROM 中的 dev_data 目录中。脚本中的代码是在刷完机后第一次启动时执行的,利用它可以对系 统进行设置,安装 APK 等工作。 看看 liudidi1028rom 中的脚本片段 # System default settings /system/xbin/sqlite3 $DATABASE "INSERT INTO system (name, value) VALUES ('trackball_wake_screen', 1);" /system/xbin/sqlite3 $DATABASE "INSERT INTO system (name, value) VALUES ('trackball_unlock_screen', 1);" /system/xbin/sqlite3 $DATABASE "INSERT INTO system (name, value) VALUES ('lock_home_in_memory', 1);" 我想大家应该可以猜出这三句代码的作用了吧。至于脚本这么写,不要来问我,我也 不熟,大家可以共同研究。 在脚本中可以使用 rm,mv 等命令,用它可以直接把某些配置文件覆盖掉。 例如: busybox rm /system/etc/某文件 busybox mv /system/etc/某文件

当然, 如果修改的是系统文件, 先要取得权限: busybox mount -o remount,rw /system 之后再改为只读 :busybox mount -o remount,ro /system firstboot.sh 很有用,要是哪位大大能写个初级教程就好了! ============================= 五。ROM 常见的系统配置文件。 修改这些文件可以调整系统设置 1。\system\etc\spn-conf.xml:显示营运商的 例如 <?xml version="1.0" encoding="utf-8"?> <spnOverrides> <spnOverride numeric="46001" spn="中国联通"/> <spnOverride numeric="46000" spn="中国移动"/> <spnOverride numeric="46002" spn="中国移动"/> </spnOverrides> 如果下载的 ROM 中显示的是英文,可以试着修改这个文件。 2。 \system\etc\gps.conf:和 GPS 搜星相关,所谓提高搜星速度就是修改这个文件了 方 法 , 把 文 件 中 NTP_SERVER=XXXXX.pool.ntp.org 改 为 NTP_SERVER=cn.pool.ntp.org。 我试过, 这个网站 ping 的速度的确比原始设置中的那个要快 一倍以上 3。\system\bin\rc:这个大家应该很熟悉了,用来设置 Swap,Compcache 之类的。 (1)设置 SWAP 进入文件后找到 #################### ###### Swap ######## #################### 其后的代码是和开启 Swap 有关的 例如 SWAPNUM=`fdisk -l /dev/block/mmcblk1|grep swap|sed -e 's/ .*//g'` if [ -n "$SWAPNUM" ];then echo 60 > /proc/sys/vm/swappiness swapon $SWAPNUM fi 在每行前面加#注释掉后就可以不开机启动 swap 了 要改 swappiness 的大小可以该第三行中的 60 这个数字。 设置 Compcache 大家可以自己试试

(2)修改内存管理参数 在 rc 文件中加入这一行 echo "1536,1536,3072,1536,10240,12800" > /sys/module/lowmemorykiller/parameters/minfree 其中的数字从左到右为:前台进程、可见进程、次要服务、后台服务、内容供应节 点、空进程,其中的数值的单位是 4k,也就是说 1536 : 4k*1536=6144k=6M 4。 \system\etc\apns-conf.xml:和网络接入点设置有关 例如,和移动联通有关的设置 <apn carrier="中国移动 (Internet)" apn="cmnet" mcc="460" mnc="00" type="default,supl" /> <apn carrier="中国移动 (WAP)" apn="cmwap" proxy="10.0.0.172" port="80" mcc="460" mnc="00" type="default,supl" /> <apn carrier=" 中 国 移 动 (MMS)" apn="cmwap" mmsc="http://mmsc.monternet.com" mmsproxy="10.0.0.172" mmsport="80" mcc="460" mnc="00" type="mms" /> <apn carrier="中国联通 (Internet)" apn="3gnet" mcc="460" mnc="01" type="default,supl" /> <apn carrier="中国联通 (WAP)" apn="3gwap" proxy="10.0.0.172" port="80" mcc="460" mnc="01" type="default,supl" /> <apn carrier=" 中 国 联 通 (MMS)" apn="3gwap" mmsc="http://mmsc.myuni.com.cn" mmsproxy="10.0.0.172" mmsport="80" mcc="460" mnc="01" type="mms" /> <apn carrier="中国移动 (Internet)" apn="cmnet" mcc="460" mnc="02" type="default,supl" /> <apn carrier="中国移动 (WAP)" apn="cmwap" proxy="10.0.0.172" port="80" mcc="460" mnc="02" type="default,supl" /> <apn carrier=" 中 国 移 动 (MMS)" apn="cmwap" mmsc="http://mmsc.monternet.com" mmsproxy="10.0.0.172" mmsport="80" mcc="460" mnc="02" type="mms" /> 如果 ROM 中没有自带 apn 设置,可以在这个文件中加入,如果 ROM 中显示的接入点 名称不是中文也可以通过修改这个来实现 ============================= 最后一步"签名" 修改完 ROM 后最后一步就是签名了,其实签名很简单,下载签名工具,把修改好的 ROM 改名为 update.zip,放在签名工具的目录中,执行签名工具中的 sign.bat,等一会会生 成一个 updata_signed.zip 的文件,这个就是签名好的 ROM 了。之后就可以开始刷机,享受 自己的劳动成果了。 本部分内容设定了隐藏,需要回复后 刷新网页后 才能看到 签名工具: (自己在论坛找吧) =============================

注意: 1. 修改 ROM 时最好不要解压缩, 直接在 WINRAR 中操作, 因为 ROM 应该是在 Linux 中压缩的,压缩格式可能会和在 weindows 下直接用 winRAR 压缩出来的不同。 2. 包中的文件不要有中文文件名 3. 刷机前一定要备份,修改的 ROM 要是有什么地方弄错了很容易进不了系统 =============================


相关文章:
安卓刷机包ROM制作教程
安卓刷机包ROM制作教程_信息与通信_工程科技_专业资料。我们通常会从网上下载安卓手机刷机包刷机,刷机后又感觉不太满意,那就让我们一起来制作自己的刷机包吧。...
自己制作安卓ROM包教程
自己制作安卓ROM包教程_信息与通信_工程科技_专业资料 暂无评价|0人阅读|0次下载|举报文档 自己制作安卓ROM包教程_信息与通信_工程科技_专业资料。ROM 包的制作...
任意安卓移植ROM教程,超详细ROM技术学习
任意安卓移植ROM教程,超详细ROM技术学习_计算机软件及应用_IT/计算机_专业资料。...安卓2.3.4刷ROM教程 暂无评价 6页 5下载券 安卓ROM制作九大教程 13页 1...
[ROM教程]任意机型的rom移植教程_图文
[ROM 教程]任意机型的 rom 移植教程相信有过刷机经历的都知道安卓系统的构造 ...参考资料:android-dls.com 制作一个刷机包 ROM 定制初级教程一个完整的 ROM ...
安卓ROM定制教程rom定制的一些简单操作
安卓ROM定制教程rom定制的一些简单操作_计算机软件及应用_IT/计算机_专业资料。[...安卓刷机包ROM制作教程 6页 1下载券 安卓ROM制作九大教程 13页 1下载券 喜欢...
安卓ROM制作九大教程
安卓ROM制作九大教程_计算机软件及应用_IT/计算机_专业资料。【新手定制 ROM 入门...打开 ROM 找到/system/media/audio 其下目录分别是:alarms、notifications、 ...
教你如何制作安卓rom教程(内置两个教程看完之后基本能...
修改制作安卓rom教程 2页 2财富值 android手机ROM简单制作教... 58页 1财富值如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行...
简单易懂的Android ROM定制与修改教程
简单易懂的 Android ROM 定制与修改教程 一.首先我们来看看 ROM 中到底有些什么: 用 WinRAR 打开刷机包后可以看到几个目录,下面列出了和我们有关的几个 目录和...
安卓ROM制作简明教程
安卓ROM制作简明教程_IT/计算机_专业资料。安卓ROM制作简明教程安卓ROM 制作简明教程. 有点玩机兴趣的 android 爱好者,应该对 custom ROM 这种东西都不陌生。我介绍...
android自制开发rom教程
android自制开发rom教程_IT/计算机_专业资料。看遍论坛所有的帖子,貌似很难找到一...android_ROM分解定制签名... 9页 免费喜欢此文档的还喜欢 安卓ROM制作九大教程...
更多相关标签:
安卓rom刷机包制作 | 制作rom刷机包教程 | 安卓刷机包制作教程 | 安卓rom制作教程 | 安卓5.0rom 制作教程 | 怎么制作rom刷机包 | 如何制作rom刷机包 | 安卓4.4通用rom刷机包 |