rom移植教程.docx

上传人:b****4 文档编号:3908149 上传时间:2022-11-26 格式:DOCX 页数:8 大小:832.58KB
下载 相关 举报
rom移植教程.docx_第1页
第1页 / 共8页
rom移植教程.docx_第2页
第2页 / 共8页
rom移植教程.docx_第3页
第3页 / 共8页
rom移植教程.docx_第4页
第4页 / 共8页
rom移植教程.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

rom移植教程.docx

《rom移植教程.docx》由会员分享,可在线阅读,更多相关《rom移植教程.docx(8页珍藏版)》请在冰豆网上搜索。

rom移植教程.docx

rom移植教程

一、分析整个ROM包内的大致框架及各个文件的作用

1、system/app这个里面主要存放的是常规的应用程序,都是以apk格式结尾的文件,在这个文件夹下面的程序为系统默认的组件,个人安装的软件不会出现在这里,而是data文件夹中。

2、system/bin这个目录下的文件都是系统的本地程序,从bin文件夹名称可以看出是binary        二进制的程序,里面主要是Linux系统自带的组件。

3、system/etc该文件夹下保存的都是系统的配置文件,比如APN接入点设置等核心的配置。

4、system/fonts该文件夹下除了标准字体和粗体、斜体外可以看到文件体积最大的可能是中文字库或者一些unicode字库。

5、system/framework该文件夹下主要是一些核心的文件,是系统平台的框架。

6、system/lib目录中存放的主要是系统的底层库,比如系统平台运行时的服务库,移植过程中很多关键的地方在于此。

7、system/media该文件下包括开机动画的文件、音乐铃声文件夹,除此以外还包括一些系统提示音文件。

8、system/usr用户文件夹,包括一些共享、时区文件、键盘的一些布局文件。

接下来是一些相关文件的介绍

部分System/bin

\system\\bin\\app_process系统进程

\\system\\bin\\dalvikvmDalvik虚拟机宿主

\\system\\bin\\dbus-daemon系统BUS总线监控

\\system\\bin\\debuggerd调试器

\\system\\bin\\debug_tool调试工具

\\system\\bin\\dexoptDEX选项

\\system\\bin\\dhcpcdDHCP服务器

\\system\\bin\\dumpstate状态抓取器

\\system\\bin\\dumpsys系统抓取器

\\system\\bin\\hcidHCID内核

\\system\\bin\\mountd存储挂载器

\\system\\bin\\netcfg网络设置

\\system\\bin\\pingPing程序

\\system\\bin\\playmp3MP3播放器

\\system\\bin\\pm包管理器

\\system\\bin\\qemudQEMU虚拟机

\\system\\bin\\radiooptions无线选项

\\system\\bin\\rildRIL组件

\\system\\bin\\servicemanager服务管理器

\\system\\bin\\ssltestSSL测试

\\system\\bin\\su**ceflinger触摸感应驱动

\\system\\bin\\svc服务

部分system/etc

\\system\\etc\\apns-conf.xmlAPN接入点配置文件

\\system\\etc\\AudioFilter.csv音频过滤器配置文件

\system\\etc\\bookmarks.xml书签数据库

\\system\\etc\\dbus.conf总线监视配置文件

\\system\\etc\\favorites.xml收藏夹

\\system\\etc\\firmware固件信息

\\system\\etc\\gps.confGPS设置文件

\\system\\etc\\hcid.conf内核HCID配置文件

\\system\\etc\\hosts网络DNS缓存

\\system\\etc\\mountd.conf存储挂载配置文件

\\system\\etc\\NOTICE.html提示网页

\\system\\etc\\permissions.xml权限许可

部分system/lib

\\system\\lib\\libandroid_runtime.soAndroid运行时库

\\system\\lib\\libandroid_servers.so系统服务组件

\\system\\lib\\libaudio.so音频处理

\\system\\lib\\libaudioeq.soEQ均衡器

\\system\\lib\\libaudioflinger.so音频过滤器

\\system\\lib\\libbluetooth.so蓝牙组件

\system\\lib\\libcamera.so相机组件

\system\\lib\\libcrypto.so加密组件

\\system\\lib\\libdrm1.soDRM解析库

二、移植XUI刷机ROM前的准备

1、首先建议安装对比工具BeyondCompare(网上资源很多,直接XX或者google搜索BeyondCompare)

2、建议Linux环境ubuntu系统(该系统下可以使用赫赫有名的Android厨房工具)

3、Android厨房工具的使用方法在此略过...(Android厨房工具中文版里面相关的功能都有明确的指导,简单易用)

4、准备要移植机型的底包,移植XUI,找到合适的底包也是关键所在。

本教程中我们讲的是第三方ROM的移植,不包括官方ROM和官方ROM美化版。

选取底包的条件是:

0)首先在相应官网找到分辨率类似的机型。

1)首先要找到自己对应机型ROM,如CM10,如果是Android4.0的推荐使用AOKP(谷歌开源非官方代码项目)版本的ROM。

2)所选择的作为底包的ROM要尽量功能完善;还要保证刷机脚本的通用性;在刷机包的META-INF/com/google/android/内的updater-script是刷机的脚本,打开刷机脚本,将其中的第一行关于机型验证的代码删除。

如图

3)如果为自己机型开发的ROM不是很多的话,则尽量选取使用同一厂商同一平台的其它机器的ROM。

4)尽量选择zip格式的卡刷包

三、移植过程所要执行的操作

1、首先移植XUI的应用层和framework层,该步骤是将替换system文件夹下的app和framework为XUI的文件内容如下图:

2、移植应用层(system/app)如下图:

备注:

如果没有上述文件,就要添加。

3、移植系统框架层(system/framework)

如下图:

备注:

如果没有上述某些文件,则需要添加

4、移植lib库文件(system/lib)如下图:

备注:

如果没有上述某些文件,则需要添加

5、移植bin文件(system/bin)  如下图:

备注:

如果没有上述某些文件,则需要添加

6、系统内的system/etc文件暂时不需要移植

7、在system/media文件内是开机动画和一些系统铃声已经自己添加的铃声,可以根据自己的喜好来决定是否移植。

四、最后修改build.prop文件  

本帖隐藏的内容ro.xda.version=此处的值必须保留所移植的XUI的build.prop内的该值,比如是Bate1.9,  则该值必须是Bate1.9,否则会影响新版本XUI的升级提示。

ro.build.date=该移植版本的制作日期。

(请注意日期显示的格式,否则会出现乱编码)  

ro.build.display.id="在此可以添加自己的昵称,签上制作者名"  

ro.product.model=手机的型号;便于一些辅助软件的正确识别(比如豌豆荚、91助手等)。

ro.xda.device=该值是手机设备的名称  

ro.modversion=所移植的ROM的版本号。

(比如该版本是X-UI-Beta1.9)  

等等

五、移植完成以后进行为ROM签名打包

顺利完成上述步骤后,有关XUI移植的ROM工作基本完成,接着要对移植的文件进行签名打包,这个时候就要用的上文中提到的“android厨房工具”,有关android厨房的签名打包过程,在这里就不一一赘述。

将打包得到的zip压缩文件放于sd卡,进入刷机模式进行刷机,想必大家进行移植操作的对刷机流畅都很熟悉了。

六、刷机测试过程中,对一些常见的bug的分析以及解决的方法  

鉴于每位ROM制作者所移植的机型不同,进行了不同的修改和替换,难免在刷机和测试过程可能出现一些bug,接下来是一些常见的bug以及问题的解决方法:

1、bug:

在进行刷机测试时候,手机屏幕卡在第一屏不能进去系统或者卡在开机动画或者无限重启。

  

解决方法:

对该机型单刷底包的boot.img。

如果是自己在移植过程中多替换或者没有替换system/etc或者system/bin内的文件,单刷boot.img也是无济于事。

2、bug:

刷机测试能进去系统,但是会提示launcher异常终止、手机主界面图标显示不完全  

解决方法:

重新找到和所要移植的XUI分辨率相同或者相似的合适的底包。

3、bug:

刷机测试wifi、和蓝牙打不开  

解决方法:

替换底包或者相同机型的其他ROM的wifi或者蓝牙相关的组件。

同时也不排除是在移植过程中没有正确移植相应的库文件和驱动。

4、bug:

刷机测试,手机SIM卡上网是信号时有是无  

解决方法:

找到所移植的XUI包内的lib文件夹下,将libganril.so和libreference-ril.so(不同的机型相关文件可能还有其他几个)重新替换到移植后的底包,再重新打包刷机。

以上只是简简单单的提到几个常见的问题和解决的方法,可能在移植过程和测试过程中还会有其他的bug,欢迎大家将问题反馈到XDA智能手机论坛,这里有专业的技术团队成员为您解答疑惑,同时XDA论坛有更加丰富的智能手机资源。

  

最后,祝您移植XUI成功!

请大家不要觉得该移植过程繁琐,因为只有亲身体会了才知道移植ROM其中的乐趣和刷机成功那一刻的兴奋与激动。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1