下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

简单学习Android移植教程

作者:课课家教育     来源: http://www.kokojia.com点击数:953发布时间: 2016-04-05 10:02:40

标签: 学习AndroidAndroidAndroid系统

    当下时代科学技术发达,说到移植,我们一般想到的是医学上的移植,第一反应就是器官移植、骨髓移植等,其实不然,在现在操作系统的不断完善下,系统也能有移植,比如Android移植。那么我们来说说关于Android移植。

简单学习Android移植教程_学习Android_Android_Android系统_课课家

  其实移植并不难,主要看你有没有耐心。比如我拿MOTO XT701来举例

  这里以目前CM7系列2.3.7版本系统爲基础,其他系统略有不同。

  要移植,就要了解系统的结构和打包解包:

  打包很容易,只需要制作成ZIP格式的压缩包就行了,里面包含2个文件夹和1个boot.img文件,boot.img是内核,没有内核的系统是不能运行的,另外两个文件夹一个是system,也就是Android系统所在地,另一个是META-INF,这里一般存放是刷机脚本,我们移植一般需要改的就是system文件夹里的内容。

  解包就是解压缩。

  首先说结构,system下有:

  App文件夹(存放内置软件的地方,每个软件都有自己的名字标注着,很容易识别,在移植上除USB.apk必须用咱们自己的版本以外,其他可以用同分辨率机型的APP直接替换)

  Bin文件夹(本文件夹一般存放的是开机运行的脚本和一些系统必备代码,一般移植出了问题不能开机就是这里的问题,一般我们用702的或者720的ROM里的,注意除了NETD需要用701的外,其他也可以直接用702或者720ROM的,不过一般系统升级不会修改这里,在移植的时候,要删除2nd-init以及所有.sh脚本文件,这些对701是没有效果的,如果电池显示?,那么可以通过替换battd文件来修複)

  Etc文件夹(本文件夹里存放着这种配置文件,包括WIFI,蓝牙和基带{\\etc\\motorola\\bp_nvm_default}配置文件,A-GPS的文件和Hosts文件也在这里,media_profiles.XML可以控制录像质量,cameraCalFileDef5M.bin与cameraCalFileDef8M.bin是照相的数据库文件,都可以修改,子文件夹init.d文件夹下可以写入自己的开机脚本,来实现一些程序或者脚本开机啓动,如果想要执行某模块,可以添加一个文件,不要有后缀名,格式爲00aaa 00是执行序号,系统开机时会按顺序执行,aaa是爲了区别每个脚本的名称,可以随便写)

  Font文件夹(字体文件夹,没什么好解释的,你可以替换爲你喜欢的字体)

  Framework文件夹(系统框架结构文件目录,这个目录下是系统服务和系统界面的所在地,一般不可以单独替换,要移植的话必须全部替换,不然会卡M,framework-res.apk文件就是系统语言,界面的所在文件,修改他就可以直接修改系统界面,framework-res.apk必须与app文件夹中systemui.apk配套,不然开机会出现状态栏FC,不同版本不可以乱用,比如CM7.1.0.5不能用CM7.1.0.4的文件)

  Lib文件夹(本文件夹是系统所需要用到的驱动,库文件的所在,如果某程序FC或者无法正常运转,可能是这里的问题,我把我知道的一些文件的用途说一下:

  ***Lib/dsp文件夹 DSP驱动所在,一般不需要改

  ***lib/egl 显示芯片驱动,一般不需要改

  ***libaudio.so 话筒及音频驱动 必须用701的

  ***libaudioflinger.so 音频附属驱动 必须用701的

  ***libbridge.so 相机方面

  ***libbattd.so 电池驱动

  ***libcamera.so 相机驱动 必须用701的

  ***libcameraservice.so 相机服务驱动

  ***libfmradio.so FM驱动

  ***libHPImgApi.so 图片接口驱动 必须用701的

  ***libLCML.so 未知驱动 必须用701的

  ***liboemcamera.so 相机驱动 必须用701的

  ***libOMX.TI.JPEG.Encoder.so 照片编码器 必须用701的 否则照片黑

  ***libOMX.TI.AAC.decode.so 此类型的都是编码器和解码器驱动(多媒体)

  除上述红色文件必须用701外,其他文件可以直接用702或者720的。

  Media文件夹(铃声及开机动画)

  TTS文件夹(文字转语音文件夹)

  Usr文件夹(键盘文件与各类数据库)

  Xbin文件夹(系统工具文件夹)

  Build.prop文件(系统参数文件,修改这里可以调节系统部分参数与性能)

  如:默认虚拟机大小,铃声延迟,系统版本等

  一般来说只要遵循规律,由少至多移植,不会出现什么问题,出现问题就从头开始,多积累经验,慢慢就会了。

     上文简单介绍了一些system结构下各个文件夹,以及一些用途。终于知道文件管理下一些文件夹为什么会存在了。

赞(20)
踩(4)
分享到:
华为认证网络工程师 HCIE直播课视频教程