赞
踩
搬运过来,以后学习的时候好看看,麻烦版主给设置一下回复可见,谢谢
【本教程只适用于MTK芯片手机】
理论上只能同安卓版本相互移植,例如4.1移植4.1,4.2移植4.2,不同版本的请自测。
MTK芯片的手机移植ROM很简单,但是后续修复Bug部分就*了,甚至有可能会被某些Bug困住几个月。
教程开始。
建议选取分辨率相近的机器,避免部分错位和不开机情况。
第一部分:同平台移植(例如MTK6589相互移植)
1.把官方ROM和要移植的ROM解压。
2.从你的官方系统中提取以下文件(建议整合一下,方便以后更多次的移植)
需要替换的文件夹有:
system/vendor/lib/
system/usr/keychars和keylayout两个文件夹
system/lib/modules/
system/lib/hw/
system/lib/cam开头的.so(这里呢,我的习惯是先替换libcameracustom.so,如果相机出了问题再替换其它的)
system/lib/audio开头的.so(这里通常我也只替换libaudio.primary.default.so)
system/etc/firmware/
system/etc/mddb/
system/etc/vold.fstab
system/etc/vold.fstab.nand
system/etc/bluetooth(如出现蓝牙问题请替换)
system/etc/wifi(wifi问题请替换)
将这些文件夹覆盖到移植ROM中,注意是替换,不是覆盖或合并。
二、刷机脚本的修改
用notepad++打开要移植的ROM中
META-INF/google/android/updater-script
①如果脚本开头有验证机型
例如assert(getprop(“ro.product.device”)== “**x” || getprop(“ro.product.product”) ==
“**xx”)
这是验证机型的代码。没有则无视,有则删除也可以修改成自己的机器名称。
②找到format(".......
只需要修mmcblk0p#这里的#是一个数字,修改这个数字为跟官方包相同的
mount("...这句也相同
例如:
这是要移植的ROM中的刷机脚本的部分内容:
format("ext4", "EMMC", "/dev/block/mmcblk0p5", "0", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
这是官方包中刷机脚本的部分内容:
format("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
那么,你只需把要移植的ROM中的刷机脚本中的mmcblk0p5改为mmcblk0p3
注意,如果没有基础,请不要直接把官方RO
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。