
本文为MTK6577百度云ROM移植教程,百度云已经有了MTK6577平台的ROM A789,基于A789,我们可以将百度云ROM移植到其它的MTK6577的机型上。类似的可移植机型也有:联想P700i、联想A800、联想A660、联想s850e、金立GN700W、金立C700、金立C610、纽曼N1、中兴V889M、中兴V880F等,把机型写下来供各位参考。根据自身的移植经验,再参考其它已有教程,总结了一下百度云ROM的移植。在本文中我们即将对市面上存在的可以刷MTK6577 平台机器的移植进行介绍,本篇理论上适用于所有MTK6577平台的移植。
准备环境:
cygwin安装,如果有linux环境,则可以直接跳过这一步。
MTK刷机工具:
;uk=3609743142
一、选择适合的基础包
1.1 选择适合的第三方ROM包
市面上MTK 平台的手机很多,这时我们必须选用一个合适的ROM 作为基础包(这此处简称Base)。
首先,本篇中我们讲的是直接将MTK6577 平台手机的官网ROM 移植作为百度的ROM。
在这里我们首先要找到自己机型的刷机包,然后进行如下操作(如果是卡刷包可以直接跳过):
1)首先要找到自己机型的线刷包和卡刷包,卡刷包的目的主要是不用去解包system.img;
2)提取卡刷包的system(或者找软件解包线刷包的system.img);
3)提取解包出来的system 文件夹和线刷包中的boot.img。
1.2 选择合适的百度云ROM刷机包
在这里一定要注意,现在百度MTK6577 暂时仅支持WVGA(800X480)分辨率,但是后续需要会支持其它分辨率的型号的!
现在,请你们到百度官网下载联想A789 的固件包成为移植基准包(后面简称sample 包)!
二、移植之前的打算工作
选择好适合的base 包并下载完sample 包之后,我们首先要进行下面的操作得到system 文件夹和boot.img,这时再将sample 包解压到任意文件夹。

1.明确移植操作的方向
在这里,我们首先一定要明确移植的方向是:
以百度的sample 包成为最后成型刷机包的基础,把base 包中各机型特有的东西加起来,最终产生自己的刷机包。
2.学习使用BeyondCompare使用BeyondCompare进行对比操作,篇幅所限,本文中不再教给你们,但是在互联网中关于这个软件的教程有很多,大家可以自学下。
三、移植过程中所必须的操作
1.移植百度的应用层和framework 框架层
此处将如下图三个文件夹必须使用百度sample包的,否则会造成诸多bug:
2.移植lib层
system下的lib 文件夹主要是Android 系统的动态链接库,这上面有一些是平台软件相关的接口,以及一些平台层应用必须读取的库文件,还有厂商的HAL 层的库文件,百度同样在这里进行了设置。所以在移植这里的之后必定要谨慎,不能随便删减添加东西,但是其中的modules必须使用官网base包的,下面给出使用的基本列表,在列表以外的尽量保持百度sample包的:
需要更换为官网的文件状况(如果没有需要添加)
modules 文件夹必须整个使用官网base包的
使用BeyondCompare软件对比起来base包多的.so 文件可以添加
3.移植system/bin 和system/xbin文件夹
必须全部使用sample 包的,否则有也许出现平台权限错误,busybox 失效等问题
4.移植system/media 文件夹整个文件夹必须使用百度sample的,否则也许出现关机消失,锁屏消失,无法关机等问题。
5.移植system/usr 文件夹,

这里请将sample 包的keychars 和keylayout 两个文件删除,替换为base 包中的这两个文件夹。
6.移植system/etc 文件夹
必须将sample 文件夹中firmware 文件夹删除mtk rom移植工具,替换为官网base 包中的firmware 文件夹。:
7.修改build.prop
必须使用base 包中官方的build.prop,但是需要在build.prop 任意位置加入如下几行(对比了A789百度和联想官网的build.prop,发现百度修改和添加了一下prop,移植时即使base的build.prop有这个属性,替换,没有则降低就能):
ro.baidu.build.hardware=A789(这里以A789为例,可选择自己适配的机型)
ro.baidu.build.hardware.version=1.0
ro.baidu.build.software=yi_3.0
ro.baidu.build.version.release=2.1
ro.product.manufacturer=Baidu
persist.sys.emmc=/mnt/sdcard2
ro.config.notification_sound=Ding.mp3
ro.config.ringtone=Echo.mp3
ro.config.alarm_alert=alarm.mp3
删除下面几个属性
ro.operator.optr=
ro.operator.spec=
ro.operator.seg=注意事项:修改build.prop,建议直接使用BeyondCompare来做,按给出的参考进行复制。

8.移植boot.img
这里无需多说,boot.img 启动镜像需要使用自己电脑的。对比了一下百度和联想官网的boot.img,发现百度修改了boot.img里的default.prop和init.rc来支持手机root和它自己的一些服务。注意事项:由于.gz文件格式的问题,要设置ramdisk里的default.prop和init.rc,必须在linux下设置解包和打包mtk的boot.img的方式和软件见如下连接,需要安装perl:
修改配置文件boot.img-ramdisk/default.prop :
ro.secure=1 修改为 ro.secure=0
ro.debuggable=1 修改为 ro.debuggable=1
persist.sys.usb.config=mass_storage 修改为persist.sys.usb.config=mass_storage,adb
修改:boot.img-ramdisk/init.rc
添加副卡路径(可选):
在下面
export EXTERNAL_STORAGE /mnt/sdcard
的后面加上一行
export SECONDARY_STORAGE /mnt/sdcard2
注意:不必定是/mnt/sdcard2, 如果加上后,文件管理器上面找不到手机上的文件,请不要添加这一项)
将BOOTCLASSPATH改为百度的,为了避免有些jar包遗漏)
另外在on fs下加上
chown root root /system/bin/su
chmod 6755 /system/bin/su
添加下面内容, 好像是百度的服务

service alljoyn-daemon /system/xbin/alljoyn-daemon --internal --no-switch-user --no-bt
class main
oneshot
service WordSegService /system/bin/WordSegService
class main
oneshot
service backuprestore /system/bin/backuprestore
class main
socket backuprestore stream 600 system system
四、移植完成后的工作1.压缩打包为zip 刷机包META-INF建议在百度的A789基础上进行设置
修改META-INF/com/google/android/updater-script:百度的A789在这里添加了:
assert(getprop("ro.product.device") == "A789" || getprop("ro.build.product") == "A789" || getprop("ro.product.device") == "a789" || getprop("ro.build.product") == "a789");
这个应该按照准确机型进行修改,要不然就直接删除吧。
assert(package_extract_file("recovery.img", "/tmp/recovery.img"),write_raw_image("/tmp/recovery.img", "recovery"),delete("/tmp/recovery.img"));
这个是要来刷recovery的,如果没有就删除吧。
2.压缩打包为zip 刷机包完成上述操作后,你的百度OS 移植ROM 已经基本完成了,这时候mtk rom移植工具,你应该将你解包sample 包起来并移植完成后的system,META-INF 文件夹以及boot.img 启动镜像打包回家,只应该像以前压缩文件时一样,将他们打包为一个zip 压缩包。在这里一定要注意,必须使用zip 格式压缩,同时不能用太大的压缩码率。
3.使用Recovery 输入ROM 包进行测试!
我相信进行移植操作的大家都早已很熟练刷机这个方法,但是在这里我而是要提示各位,做好的ROM 一定要自己刷入进行测试,刷入时一定要双清(双Wipe)。
4.测试之后发生BUG的反馈机制
我相信大家即使选好base包,并如上操作,你们的百度ROM已经成型并可以使用了。
但是,因为每一个ROM制作者针对不同机型所做的更改不同,有可能会出现一些Bug,如果发生了你们能够缓解的Bug可以到百度云ROM论坛提出。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shouji/article-124411-1.html
敌人要到你头上拉屍
反正中国门口天天被侦查
美国来展现下霸主地位