search 登录 注册
arrow_back返回列表
ID:131728
light_modedark_modestar
Lv.1 韶华一笑间
edit_note帖子 130
stars积分 6,516
event加入 2013-01-27
美化修改

表情[教程]安卓ROM移植教程(史上最精最全)申精

schedule发表于 2013-08-11 17:24:00 visibility查看 10,104 chat_bubble回复 782
#1 楼主
乐蛙OS移植教程
(高通篇)第三章制作第三方移植乐蛙ROMROM(高通篇)
在本文中我们将会对市面上存在的高通、德州仪器、三星、tegra四种平台的机器的移植进行介绍,今天先给大家带来高通篇。
选择合适的基础包一、一、选择合适的基础包
1.1选择合适的第三方ROM包
市面上高通平台的手机众多,使用高通机器的手机也有着众多的ROM,这是我们需要选择一个合适的ROM作为基础包(这这里简称Base)。
首先,本篇中我们讲的是第三方ROM的移植,不包括官方ROM和官方ROM美化版,在第一章中我们也有所介绍,关于官方ROM的移植,我们后续文章中将会有所介绍。
在这里我们推荐选用CM的ROM作为base包,选取条件如下:1)首先要找到自己机型的CM的ROM;2)所选择的ROM要尽量功能完善;
3)如果为自己机型开发的ROM并不多,则尽量选取使用同一厂商同一平台的其它机器的ROM,例如U8510就可以选用C8650的ROM。
4)尽量选择zip格式的卡刷包。
1.2选择合适的乐蛙OS刷机包
在这里一定要注意,现在乐蛙仅支持WVGA(即800X480的hdpi)和HVGA(即320X480的mdpi),大家选择用来移植的乐蛙OS刷机包是一定要选择和自己分辨率一样的机型,FWVGA(854X480)实际上也可以用WVGA(800X480)的刷机包,虽然会产生少许错位,但不会影响整体。
移植之前的准备工作二、二、移植之前的准备工作
选择好合适的base包后,我们首先要把想要移植的解压缩,这就跟电脑上的ZIP压缩包解压的过程是一样的,后面我们打包回去也是同样的过程:
保证刷机脚本的通用性1.1.保证刷机脚本的通用性
在解包的ROM中有META-INF这个文件夹,在里面存放了刷机脚本,具体位置为
\META-INF\com\google\android\中的*r-script文件,打开刷机脚本,将关于机型验证的第一行删除,2.学习使用BeyondCompare2.学习使用
在前面一章,我们已经多次提及BeyondCompare,进行对比操作,篇幅所限,本文中不再教给大家,但是在互联网中关于这个工具的教程有很多,希望大家好好学习。
三、移植过程中所需要的操作
移植乐蛙的应用层和framework框架层1.1.移植乐蛙的应用层和
此处首先需要替换system文件夹下的app和framework这两个文件夹中的内容为乐蛙OS的,但是,在此处需要注意,有些应用和framework的jar包是当初制作ROM的人为修复某些功能特意加入的,同时乐蛙OS的apk和odex是必须都要移植的,除非进行了deodex操作,此操作建议使用dsixda工具,如下给出两张表是必须替换为乐蛙应用的:system/app)移植1.1应用层(应用层(system/appsystem/app)移植App名称
AccountAndSyncSettingsApplicationsProviderBluetoothBrowserCalculatorCalendar365CalendarProviderCameraCMPartsCMScreenshotContactsProviderCstore
DefaultContainerServiceDeskClockDownloadProviderDownloadProviderUiDrmProviderEmail
状态(如果没有需要添加)必须替换必须替换可以保留原生可以保留原生必须替换
365日历,推荐添加必须替换可以保留原生必须替换可以保留原生必须替换必须替换必须替换必须替换必须替换必须替换必须替换必须替换HTMLViewerInterceptLabiSyncLatinIMELewaFcLewaFeedbackLewaFileManagerLeWaFMLewaLauncherLocationProviderMediaProviderPackageInstallerPacmanPhonePicFolderPicoTtsPIMProtipsProvisionQuickSearchBoxSettings
SettingsProvider
必须替换必须替换必须替换可以保留原生必须替换必须替换必须替换必须替换必须替换必须替换必须替换必须替换必须替换必须替换
快图浏览,推荐添加必须替换必须替换可以保留原生必须替换可以保留原生必须替换必须替换SoundRecorderSuperuserSwapperSystemUI
TelephonyProviderTtsService
UserDictionaryProviderVpnServices
system/framework)移植1.2framework框架层(框架层(system/frameworksystem/framework)移植文件am
android.policyandroid.test.runnerbmgrbouncycastle
com.android.location.providercom.google.android.mapscorecore-junitextframeworkframework-res
必须替换必须替换必须替换必须替换必须替换可以保留原生必须替换必须替换
状态(如果没有需要添加)必须替换必须替换必须替换必须替换必须替换必须替换可以保留原生必须替换必须替换必须替换必须替换必须替换imeinputjavax.obexmonkeypmservicessqlite-jdbcsvc
必须替换必须替换必须替换必须替换必须替换必须替换必须替换必须替换
移植lib层2.2.移植
System下的lib文件夹主要是Android系统的动态链接库,这里面有一些是系统硬件相关的接口,以及一些系统层应用需要调用的库文件,还有厂商的HAL层的库文件。
所以在移植这里的时候一定要谨慎,不能随便删减添加东西,最好不要动其中egl,hw,和bluez-plugin下的东西,下面给出一张移植乐蛙OS的基本列表,在列表以外的尽量保持原本base包的:需要替换为乐蛙OS的库文件libdssliblameLibmicrobes_jniLibmobilesafe360-jniLibandroid_runtimeLibqpicjni10
状态(如果没有需要添加)必须替换必须替换必须替换必须替换必须替换
添加快图浏览必须添加
移植system/bin文件夹3.3.移植
需要替换为乐蛙OS的文件
状态(如果没有需要添加)recoverydebuggerd
必须替换必须替换
移植system/xbin文件夹4.4.移植
替换su文件,因为不替换会导致部分应用需要手动允许权限。
移植system/media文件夹5.5.移植
替换或添加bootanimation.zip和lockscreen.zip,这样可以替换为乐蛙锁屏和乐蛙开机动画。
修改build.prop6.6.修改
在build.prop任意位置加入如下几行(添加所移植版本和机型是为了使乐蛙能够进行统计,以更好的帮助移植者解决问题):
ro.lewa.version=输入你所移植的版本ro.lewa.device=输入你所移植的机型ro.error.receiver.system.apps=com.lewa.fcro.error.receiver.default=com.lewa.fcpersist.sys.notif-speaker=1persist.sys.ring-speaker=1persist.sys.alarm-speaker=1
移植完成后的工作四、四、移植完成后的工作
1.压缩打包为zip刷机包1.压缩打包为
完成上述操作后,你的乐蛙OS移植ROM已经基本完成了,这时候,你需要将你解包出来并移植完成后的system,META-INF文件夹以及boot.img启动镜像打包回去,只需要像平时压缩文件时一样,将它们打包为一个zip压缩包。
在这里一定要注意,必须使用zip格式压缩,同时不能用太大的压缩码率。使用Recovery输入ROM包进行测试2.2.使用
我相信进行移植操作的各位都已经很熟练刷机这个步骤,但是在这里我还是要提醒大家,做好的ROM一定要自己刷入进行测试,刷入时一定要双清(双Wipe)。
测试过后出现Bug的反馈机制3.3.测试过后出现
我相信大家只要选好base包,并如上操作,你们的乐蛙ROM已经成型并可以使用了。
但是,因为每一个ROM制作者针对不同机型所做的修改不同,有可能会出现一些Bug,如果出现了大家无法解决的Bug。这时,大家可以进入乐蛙ROM实验室进行反馈,反馈时一定要注意方式和格式,这样可以让乐蛙的技术人员更快的帮助你解决问题。
你可以通过开新帖的方式进行反馈,也可以申请ROM实验室移植者的身份,进入专门的反馈贴进行反馈。在反馈的时候,请尽量对出现Bug的模块分条分类,并标注序号,写明模块,条理要尽可能清晰。
同时,要将你移植ROM所用的base包和你移植成功的ROM提交给我们。论坛不能上传太大附件,但是你可以通过上传网盘,并将网盘下载链接放入帖子中的方式提交给我们。
请不要觉得步骤繁琐,因为详细的反馈才能够让你所遇到的Bug尽快得到解决。
其它的也有异曲同工之处。

全部回复 (782)

ID:108557
light_modestarstar
Lv.1 韶华一笑间
2013-09-03 17:24:00 #62
g
ID:131359
light_mode
Lv.1 韶华一笑间
2013-09-05 22:28:00 #63
rfgh
ID:134926
dark_modedark_modedark_modestar
Lv.1 韶华一笑间
2013-09-06 21:06:00 #64
ID:74911
light_modestarstar
Lv.1 韶华一笑间
2013-09-07 13:05:00 #65
11222
ID:38210
light_modestarstar
Lv.1 韶华一笑间
2013-09-07 13:18:00 #66
什么
ID:88175
light_modestarstarstar
Lv.1 韶华一笑间
2013-09-07 18:46:00 #67
阿狸了了了了
ID:88175
light_modestarstarstar
Lv.1 韶华一笑间
2013-09-07 18:47:00 #68
阿狸了了了了她
ID:139725
dark_modestar
Lv.1 韶华一笑间
2013-09-07 23:35:00 #69
额哦
ID:107369
light_modestarstar
Lv.1 韶华一笑间
2013-09-08 01:51:00 #70
安卓ROM移植教程(史上最精最全)
ID:93587
light_modestar
Lv.1 韶华一笑间
2013-09-08 11:18:00 #71
hhdd
ID:142798
dark_modestarstar
Lv.1 韶华一笑间
2013-09-08 12:37:00 #72
ID:12608
light_modestarstarstar
Lv.1 韶华一笑间
2013-09-08 15:06:00 #73
就哭兔
ID:139807
light_mode
Lv.1 韶华一笑间
2013-09-08 15:34:00 #74
bhvccc
ID:117609
light_modestarstar
Lv.1 韶华一笑间
2013-09-08 18:06:00 #75
vyjff
ID:114368
light_modestar
Lv.1 韶华一笑间
2013-09-08 21:40:00 #76
经济技术开发区
ID:30334
light_modestar
Lv.2 独赏二月雪
2013-09-08 23:06:00 #77
苦啊
ID:140718
dark_modedark_modestarstar
Lv.1 韶华一笑间
2013-09-09 13:04:00 #78
会uuuvggg
ID:18036
light_modedark_mode
Lv.4 莫问四书意
2013-09-11 09:56:00 #79
:FRR
ID:82503
light_modedark_modestar
Lv.1 韶华一笑间
2013-09-11 13:48:00 #80
看看
ID:102095
light_mode
Lv.1 韶华一笑间
2013-09-11 14:35:00 #81
tggg
登录 后才能回复