没有合适的资源?快使用搜索试试~ 我知道了~
安卓rom简单移植.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 84 浏览量
2023-02-22
21:52:23
上传
评论
收藏 5.07MB DOCX 举报
温馨提示
试读
24页
.
资源推荐
资源详情
资源评论
以前移植过华为 C8812 的,觉得移植内容差不多,所以决定试试,
毕竟 N881E 也有一批用户,下面列出我的一些办法,看看对中兴机子
是否可行
我以前移植华为的办法如下
移植百度的应用层和
framework 框架层(system/app system/framework system/tts
这三个文件夹我用的是百度云 N880E的底包)
移植 lib,不删减添加东西,但是其中的
modules 使用官方包的,用 Beyond
移植 system/media 文件夹整个文件夹必须使用百度的
移植 system/usr 文件夹把百度的 keychars 和 keylayout 两个文件删除,
替换为官方包中的这两个文件夹
移植 system/etc 文件夹必须将百度云的文件夹中 firmware 文件夹删
除,替换为官方包中的 firmware 文件夹
修改 build.prop
必须使用官方包中官方的 build.prop,但是必须在 build.prop 任意位置
加入如下几行(对比了 N880E 百度和 N881E 官方的 build.prop,发现
百度修改和添加了一下 prop,移植时如果官方的 build.prop 有这个属性,
替换,没有则增加即可):
ro.baidu.build.hardware.version=1.0
ro.baidu.build.software=yi_3.0
ro.product.manufacturer=Baidu
ro.config.notification_sound=Ding.mp3
ro.config.ringtone=Echo.mp3
ro.config.alarm_alert=alarm.mp3
ro.operator.spec=
ro.operator.seg=
修改:boot.img-ramdisk/default.prop
ro.secure=1 修改为 ro.secure=0
ro.debuggable=1 修改为 ro.debuggable=1
添加副卡路径:在 export EXTERNAL_STORAGE /mnt/sdcard
将 BOOTCLASSPATH 改为百度的,为了防止有些 jar 包遗漏
另外在 on fs 下加上
添加以下内容, 好像是百度的服务
service alljoyn-daemon /system/xbin/alljoyn-daemon --internal --no-
class main
oneshot
oneshot
META-INF 在百度的 N880E 基础上进行修改
write_raw_image("/tmp/recovery.img", "recovery"),
delete("/tmp/recovery.img"));
二、移植 boot.img
移植安卓 rom 首先要移植 boot.img,这里我只说一下要重点修改 boot.img 里面的
内容,此外怎么解包和打包 boot.img 就不在这里谈及了,网上有很多教程,多用搜索功
能。我推荐用厨房软件解包 boot.img,解包 boot.img 后有 BOOT-EXTRACTED 文件夹,
BOOT-EXTRACTED 文件夹里面有 boot.img-ramdisk 文件夹和 zImage 内核,我们找到
boot.img-ramdisk 文件夹里面的 init.rc 文件,移植 boot.img 全部就在 init.rc 文件,
init.rc 文件我理解就是一个启动文件,我们开机后通过init.rc 文件启动系统。好,现在我
们用文本编辑打开 init.rc 文件,找到 exportBOOTCLASSPATH 这一项,这一项后面就
是启动系统的相关项目,不同机型不同系统这一项启动内容都不一样,那么我们怎么修改
这个呢?很简单,比如我们解包 G14 的 sense4 的 rom,找到 G14 的内核 boot.img,然
后解包 G14 的 boot.img,找到 init.rc 文件,然后用文本打开将 export
BOOTCLASSPATH 这一项后面的内容全部复制,然后再到 22 的 init.rc,把 export
BOOTCLASSPATH 这一项的内容复制上去,简单的说就是将G11 的启动内容复制到 G22
的启动内容上,到这里,boot.img 的移植就完成了,最后将 G22 的 boot.img 打包回来。
本教程在随风 6577 移植教程基础上,专门针对 mtk6589 系列移植乐蛙进行进一步说明。
一、修改脚本
打开要移植的基准包,如果给 U956 移植,推荐中兴 V987,mtk6589 的 u,720p 的屏。
用记事本或 notepad+(推荐用 notepad+)打开 META-IND/com/google/android/updater-
script
1.删除下面机型验证信息(如果脚本中没有这些语句,则跳到下一步)
assert(getprop("ro.product.device") == "v987_jb2" || getprop("ro.build.product") ==
"v987_jb2" ||
getprop("ro.product.device") == "ztenj89_we_jb2" || getprop("ro.build.product")
== "ztenj89_we_jb2" ||
getprop("ro.product.device") == "v987" || getprop("ro.build.product") == "v987"
||
getprop("ro.product.device") == "V987" || getprop("ro.build.product") == "V987"
getprop("ro.product.device") == "P188F04" || getprop("ro.build.product") ==
"P188F04");
2.删除刷入 recovery 命令(如果脚本中没有下面语句,则跳到下一步)
assert(package_extract_file("recovery.img", "/tmp/recovery.img"),
write_raw_image("/tmp/recovery.img", "recovery"),
delete("/tmp/recovery.img"))
同时删除包中的 recovery.img
3 修改挂载 system 分区
有些要移植的 ROM,挂载 system 分区和 U956 的不一样,则需改成和 U956 一样的,如康
需改为和 U956 一样的,修改后如下
怎么知道要改成的分区是多少呢,这个可以查看自己机型官方包中的脚本,改成和官方的
一样就可以了
4 删除其它(如果有下面的语句也删除掉,没有则跳过此步)
assert(package_extract_file("uboot.img", "/tmp/uboot.img"),
write_raw_image("/tmp/uboot.img", "uboot"),
delete("/tmp/uboot.img"));
同时删除包中的 uboot.img
二、替换 System/lib 和 system/etc/firmware
1.将基准包 V987 包中的 System/lib里的 modules 文件整个删掉,换成 U956 的。
2.替换 System/lib 里的 hw(传感器相关)。
3.libcameracustom.so,这是相机驱动,替换成 U956 的,(lib 中还有其他几个
相机相关文件,我一般是相机出错时才替换。)
5.其它蓝牙驱动啊,收音机驱动啊等等,我都是省事不替换的,你们可以换一下。
这里必须替换 system/lib/libaudio*.so和 system/lib/soundfx,不然会出现打电话无声的问
题。(我的这个帖子
http://www.zhongxingfans.com/forum.php?mod=viewthread&tid=118407&extra=就是有
这个问题)
6.system/etc/firmware这个是基带等文件在里面,整个删除,然后替换成U956
的(我有时候只替换 firmware 里面的部分文件,小白整个替换吧)
三、替换 System/usr
把 V987 中的 system/usr/keychars,keylayout 文件夹删除,替换成 U956 的,不然
home 键可能不能用。
四、替换 system/vendor/lib
这个文件有些机型是不用替换的,比如移植V889S 就不用,有些只需要替换里面部
分的文件,为保险,小白把整个文件夹删除,替换为U956 的吧。
把 V987 包中的内核 boot.img 删除,替换成 U956 的内核 boot.img
六、System/build.prop修改
可以自己换下版本号,修改 ril.telephony.mode=1为 ril.telephony.mode=2,否则无信
号。
完成上诉步骤后,你就拿替换好文件后的 V987 的包来刷吧,一般你能开机了,如果
不能开机看看是不是忘记双清了,是不是卡刷工具不兼容,是不是你的刷机包太大了,如
你
移植一个刷机包有 600 多 M,而你的系统 system 分区只有 500M,那么这个一般是不能开
有些超大 DATA 严重压缩 system的空间,这就更加不能开机了,只能精简刷机包,或分给
system
足够大的空间,小白先选包比较小的来移植练习吧。能开机后也许会有BUG。
移植成功这只是基础,修复 BUG 才是难点,修复 BUG 需要一定的基础,有时需要部
分移植或修改内核
此处就不详说了。
以上是我移植乐蛙成功的经验结合随风具体教程修改的,成功率几乎是100%,而且 bug
基本没有,因为 V987 和 U956 硬件十分相近,移植版和原生的差距也并不大了
Lib 文件夹(本文件夹是系统所需要用到的驱动,库文件的所在,如果某程序FC 或者无法
正常运转,可能是这里的问题,我把我知道的一些文件的用途说一下:
***Lib/dsp 文件夹 DSP 驱动所在,一般不需要改
***lib/egl 显示芯片驱动,一般不需要改
***libbattd.so 电池驱动
***libcamera.so 相机驱动 必须用 701 的
***libcameraservice.so 相机服务驱动
***libfmradio.so FM驱动
***libHPImgApi.so 图片接口驱动 必须用 701 的
剩余23页未读,继续阅读
资源评论
xxpr_ybgg
- 粉丝: 6520
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于JavaScript和CSS的随寻订购网页设计源码 - web-order
- 基于MATLAB的声纹识别系统设计源码 - VoiceprintRecognition
- 基于Java的微服务插件集合设计源码 - wsy-plugins
- 基于Vue和微信小程序的监理日志系统设计源码 - supervisionLog
- 基于Java和LCN分布式事务框架的设计源码 - tx-lcn
- 基于Java和JavaScript的茶叶评级管理系统设计源码 - tea
- IMG_5680.JPG
- IMG_0437.jpg
- 基于Java的JAVA项目分析工具设计源码 - JAVAProjectAnalysis
- top888.json
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功