已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
如何移植ROM只试用于MTK芯片手机!在这篇教程中,你将会学会同平台CPU移植,也将会跨平台移植。试用于芯片MT6589 to MT6577移植MT6582 to MT6572移植MT6577 to MT6575移植只能ICS移植ICS 或者JB to JB可能4.1移植4.2也行,只是可能。不需要安卓源码不需要内核源码不需要安卓厨房不需要Linux环境只需要:* 大脑的思考* 耐心去做的决心* Windows XP/7/8* 7-Zip解压缩工具* Notepad+文本编辑器* Bootimg 解包打包工具* 官方ROM和要移植的ROM准备好了,现在开始.同平台移植 ( 例如: MT6572 移植MT6572)*把官方ROM和要移植的ROM解压。* 从你的官方系统中提取以下文件替换到你想要移植的ROM中,注意,替换整个文件夹时先删除要移植的包中相应文件夹,不要直接合并。需要替换的文件或文件夹有:*system/vendor/lib*system/usr/keychars和keylayout*system/lib/modules*system/lib/hw*system/lib/libncurses.so*system/etc/firmware*system/etc/vold.fstab*system/etc/vold.fstab.nand*system/etc/bluetooth当出现一下bug时,替换以下文件.*system/etc/permissions*system/etc/security*system/etc/audio*system/etc/wifi*system/lib/drm*system/lib/egl*system/lib/soundfx* 然后把官方的boot.img替换到要移植的包,前提是你的官方包boot和要移植的包中boot的启动项要相同,如果你移植像乐蛙ROM这样的,还需修改启动项。因为乐蛙还导入了lewa-framwork.jar,下文有说明,建议移植任何ROM都修改一下boot中的启动项,下文有讲怎么修改。*接下来用notepad+打开要移植的ROM中的 META-INF/google/android/updater-script这个刷机脚本* 找到这段: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修改好了,要移植的ROM中的刷机脚本那部分内容应该像这样:format(ext4, EMMC, /dev/block/mmcblk0p3, 0, /system);mount(ext4, EMMC, /dev/block/mmcblk0p3, /system);不要直接把官方ROM中刷机脚本的整个内容替换到要移植的ROM的脚本中去!* 现在基本完成,你要移植的ROM基本有下面这几个文件,这是最基本的:-META-INF-system-boot.img* 现在用7zip把上面三个打包成zip格式的压缩包。* 压缩文件时,应该这样配置:压缩格式: ZIP压缩方式: 正常* 现在,把制作好的zip包放入SD卡,然后进入第三方Recovery模式* 选择清空数据,恢复出厂设置,完成后,再选择清空cache缓存。*接下来,选择“从SD卡安装zip包,选择那个包,确定,然后等待刷机完成”接下来,是跨平台移植 ( 例如: MT6582 移植 MT6572 )请仔细看接下来的教程* 官方包中提取以下文件或文件夹替换到要移植的包中*system/vendor/lib*system/usr/keycharts和keylayout*system/lib/modules*system/lib/hw*system/lib/libncurses.so*system/etc/firmware*system/etc/vold.fstab*system/etc/vold.fstab.nand*system/etc/bluetooth* 接下来用notepad+打开要移植包中的p,找到以下内容:ro.mediatek.platform=MT65xx把这里的MT65xx改为你的手机的cpu型号。例如我的手机cpu型号为MT6572,那么就改为:ro.mediatek.platform=MT6572*然后用notepad+打开要移植包中的刷机脚本* 在set_perm这段的结束地方添加这句:set_perm(0, 0, 0644, /system/vendor/lib/hw/gralloc.mt65xx.so);把这里的mt65xx改为你的cpu型号例如,我的cpu是MT6572,那么就这样改:set_perm(0, 0, 0644, /system/vendor/lib/hw/gralloc.mt6572.so);*现在,用boot解包工具把官方boot和要移植的boot解包。*然后打开要移植的boot解包后的boot.img-ramdisk,然后从中复制所有文件到 你官方boot中的boot.img-ramdisk 文件夹中。如果文件存在就跳过,相当于把要移植包boot中多余的文件复制到官方中去*然后用notepad+打开官方boot.img-ramdisk文件夹 中的init.rc*找到这句,并修改cpu型号为你的cpu型号#Create Chip Propertyon early_property:ro.hardware=mt6582setprop ro.mtk.hardware mt6589on early_property:ro.hardware=mt6589setprop ro.mtk.hardware mt6589例如,我的cpu是MT6572,那么就这样改 :#Create Chip Propertyon early_property:ro.hardware=mt6582setprop ro.mtk.hardware mt6572on early_property:ro.hardware=mt6589setprop ro.mtk.hardware mt6572*接下来,修改p,参照要移植的boot改。* 然后把修改好的官方boot打包,并把打包的boot.img和要移植包中的其他两个修改好的文件夹压缩,方法和上面一样。移植Lewa OS5 ROM:*官方包提取这些文件或文件夹到LeWa OS5 ROM中*system/vendor/lib*system/usr/keylayout和keycharts*system/lib/modules*system/lib/hw*system/etc/firmware*system/etc/vold.fstab*system/etc/vold.fstab.nand*system/etc/bluetooth* 然后解包官方的boot.img* 打开init.rc* 找到这几句,可能各个机型以下内容不同,有的机型只有一个启动项,这只是个示范。on early_property:ro.build.type=userwrite /proc/bootprof INIT: user build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jaron early_property:ro.build.type=userdebugwrite /proc/bootprof INIT: userdebug build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jaron early_property:ro.build.type=engwrite /proc/bootprof INIT: eng build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jar:/system/framework/emma.jar*添加以下这句到每三行的最后,注意/前面有个冒号!:/system/framework/lewa-framwork.jar例如: on early_property:ro.build.type=userwrite /proc/bootprof INIT: user build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jar:/system/framework/lewa-framework.jaron early_property:ro.build.type=userdebugwrite /proc/bootprof INIT: userdebug build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jaron early_property:ro.build.type=engwrite /proc/bootprof INIT: eng build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jar:/system/framework/emma.jar:/system/framework/lewa-framework.jar* 修改好了保存,然后用bootimg打包,把打包好的boot.img与之前修改好的那几个文件夹一起打包成zip,方法和之前一样。移植MIUI ROM*官方包提取这些文件或文件夹到MIUI ROM中*system/vendor/lib*system/usr/keylayout和keycharts*system/lib/modules*system/lib/hw*system/etc/firmware*system/etc/vold.fstab*system/etc/vold.fstab.nand*system/etc/bluetooth* 然后解包官方的boot.img* 打开init.rc* 找到这几句,可能各个机型以下内容不同,有的机型只有一个启动项,这只是个示范。on early_property:ro.build.type=userwrite /proc/bootprof INIT: user build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jaron early_property:ro.build.type=userdebugwrite /proc/bootprof INIT: userdebug build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jaron early_property:ro.build.type=engwrite /proc/bootprof INIT: eng build settingexport BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/secondary-framework.jar:/system/framework/CustomProperties.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-op.jar:/system/framework/emma.jar*和移植乐蛙一样,在每行最后添加以下内容,/前面有个冒号!:/system/framework/miui-framework.jar* 然后打包,接下来就和之前一样尽情享受你的ROM吧! 修复bug短信,电话,设置,通讯录强行关闭,修复方法: 反编译官方和要移植的包中framework.jar* 找到:smalicommediatek*替换官方所有的这个文件夹的内容到移植的ROM中* 然后,找到smalicomandroidserver* 替换官方所有的这个文件夹的内容到移植的ROM中* 修改好后,回编译要移植的ROM的framework.jar,然后替换回去。* 修复其他bug1、无信号、未知基带、无SIM卡如何修复? 替换以下文件为官方:systembinccci_fsdsystembinccci_mdinit、systembingsm0710muxd、systembinnetd、systembinnetdiagsystembinp2p_supplicantsystembinwpa_supplicantsystemlib/mtk-ril.so 2、相机问题,官方提取以下文件替换: systemlib/hw/camera.default.sosystemliblibcamalgo.sosystemliblibmhaldrv.sosystemliblibcamera_client.sosystemliblibcameracustom.sosystemliblibcameraprofile.sosystemliblibcameraservice.sosystemliblibmhal*.so(搜索libmhal有多少换多少)3、GPS问题,替换:/system/xbin/libmnlp4、蓝牙问题,替换:/system/lib/libbluetooth_mtk.so/system/lib/libbluetoothem_mtk.so5、音频问题,替换:systemliblibaudio.a2dp.de
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入职京东签外包合同
- 公司效果图外包合同
- 内部审计外包合同
- 分流卸货外包合同
- 加工锂电池外包合同
- 包装劳务外包合同
- 医院安全外包合同
- 单位小卖部外包合同
- 取消食堂外包合同
- 商场广告外包合同
- 2026年特种设备电梯安全作业考试题库(含答案)
- 2026黑龙江大庆油田总医院招聘消化科医生岗位2人备考题库含答案详解(夺分金卷)
- 2026年天津市高校大学《辅导员》招聘考试真题库(含答案)
- 2026年贵州人民版小学三年级综合实践活动下册(全册)教案(附目录)
- 皮肤科护理带教老师
- 2026年西藏高考文科综合试题含解析及答案
- PET-CT检查的辐射防护
- 2026年海南初二地理生物会考试题题库(答案+解析)
- 光伏组件采购与供应链管理方案
- 农场合伙经营协议书
- 2026年国际数学奥林匹克国家集训队测试试题真题(含答案详解)
评论
0/150
提交评论