1.准备工具 原厂给过来的rom 分为3个文件:boot.img recovery.img system.img 这三个文件需要通过 fastboot 这个软件烧写,过程: 先在PC 上安装驱动,然后手机进去下载模式(不是recovery界面),然后打开 fastboot 烧写,
d:
cd fastboot
fastboot flash boot boot.img
fastboot flash recovery recovery.img
fastboot flash system system.img
fastboot reboot
2.通过安智网 厨房工具 解包 system.img
详情参考 :安装厨房工具教程 http://bbs.anzhi.com/thread-4883812-1-1.html
厨房工具教程教程 http://bbs.anzhi.com/thread-4926119-1-1.html
3.xx.zip 刷机包 编译成system.img
通过厨房工具生成的刷机包是 xx.zip 格式的,可以通过sd 卡刷机,但是方案商没有给出可以卡刷得recovery,所以还需要把xx.zip 格式的刷机包编译成 system.img
a.先在虚拟机中安装ubuntu linux 系统
b现在开始做ROM
1、例如 我 在ROOT 文件里面建立一个文件夹 命名为 AND 把 unyaffs 和mkyaffs2image 放到里面
接着又在 AND 文件夹下面建立一个 system 【这文件夹 用来放 分解得到的文件】
分解方法
把终端定位到所要解压到的目录 cd /root/and然后打命令/root/and/unyaffs system.img
分解得到的所有文件 放到刚刚建立的 system文件下面 【除 unyaffs 和mkyaffs2image、system.img外】
分解出来后,你就可以开始XXOO它了【跟你把MM 的衣服脱掉,然后XXOO擦不多】
XXOO玩后总得把人家衣服穿上去把
下面执行合成 命令
/root/and/mkyaffs2image -f /root/and/system Newsystem.img
开始打包 (如果ROM中存在zImage,intrd.gz不需要-f)
最后合成得到 Newsystem.img 这就新ROm
4. 开机动画 关机动画 都在 media 下 还有 开关声音 直接替换 就可以了
关机音乐的位置是
\system\media\audio\ui\shutdown.ogg 开头字母是小写字母
开机音乐在
\system\etc\PowerOn.wav
开机动画
system\media\bootanimation.zip 开机画面文件是:bootanimation.zip
5.设置开机语言
ro.product.locale.language=zh 刷机后默认语言
ro.product.locale.region=CN 刷机后启动的默认语言
6.修改apk 文件名 和图标
见 http://bbs.anzhi.com/forum.php?mod=viewthread&tid=4806424
7.修改状态栏电池图标
http://bbs.anzhi.com/forum.php?mod=viewthread&tid=3425246
8.添加快捷开关
主要是修改 sytemUI.apk
systemui.apk 反编译 需要添加 framework-res.apk 框架
在apktool 工具目录中 添加framework-res.apk 运行 apktool if framework-res.apk 框架就添加好了 其余反编译 编译就正常
最后 在回编译的 systemui.apk 不能直接用,要用winrar 把修改的文件拖入原来 systemui.apk 中(systemui.apk 不能重新签名)
其余修改方法参考 : http://www.angeeks.com/thread-2085661-1-1.html
9.禁止usb debug 通知栏显示
主要修改 /system/framwork/services.jar 文件
需要用到 smali 和 baksmali 工具 下载地址:http://code.google.com/p/smali/downloads/list
先用winrar 解压 services.jar 得到 classes.dex
java -jar baksmali.jar -x classes.dex (反编译)
然后修改 \out\com\android\server 下 NotificationManagerService.smali 文件
iput v7, v6, Landroid/app/Notification;->icon:I
修改成
#iput v7, v6, Landroid/app/Notification;->icon:I
然后回编译
java -Xmx512M -jar smali.jar out -o classes.dex
然后把新编译成的 classes.dex 替换 services.jar 中 classes.dex 即可
10. 修改setting.apk 默认usb debug 模式开启
在 /system/app中 找到 setting.apk 反编译
用apktool 时需要加载框架 framework-res.apk
可以参考教程 :http://bbs.anzhi.com/forum.php?mod=viewthread&tid=6157613
修改 Settings.apk\smali\com\android\settings\ DevelopmentSettings.smali
const-string v2, "adb_enabled"
invoke-static {v1, v2, v3}, Landroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v1
if-eqz v1, :cond_0
move v1, v4
:goto_0
invoke-virtual {v0, v1}, Landroid/preference/CheckBoxPreference;->setChecked(Z)V
最下面一行 是设置 默认为打开usb debug
11. 修改手机名
\system\build.prop
里面model=Mione_plus 改成你想改的手机型号 如Sensation
里面manufacturer=Xiaomi 改成你机型对应的厂商 如HTC
12. 修改时区
时区
默认时区。在/system/default.prop中修改persist.sys.timezone(如果没有该项,则手动添加)的值为Asia/Shanghai(即东八区),即
persist.sys.timezone=Asia/Shanghai
注:如果没有/system/default.prop,也可以在/system/build.prop中修改或添加。