版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 Android系统结构及平台搭建Android系统结结构Android开发环境境搭建Android启动流程程分析Android系统结结构Android系统结结构基于Linux的自由及及开源的的操作系系统。Android操作系统统最初由由Andy Rubin开发。2008年10月第一部Android智能手机机发布。2011年第1季度,Android在全球的的市场份份额首次次超过塞塞班系统统,跃居居全球第第一。2012年11月,Android占据全球球智能手手机操作作系统市市场76%的份额,中国市市场占有有率为90%。2013年09月24日谷歌开开发的操操作系统统Android迎来了5岁生日,全
2、世界界采用这这款系统统的设备备数量已已经达到到10亿台。目前最流流行的智智能手机机开发平平台,现现已普及及到平板板电脑、游戏机机、数码码相机、OTT机顶盒、智能电电视等各各终端产产品。Android系统结结构一个好的的开发平平台一定定有一个个成熟、稳定的的系统架架构来支支撑Android平台系统统结构从从上到下下分为四四层:应用层框架层系统运行行库Linux内核层Android系统结结构应用层Android不仅仅仅是操作作系统,也包含含了许多多应用程程序,如如SMS短信客客户端程程序、电电话拨号号程序、图片浏浏览器、Web浏览器器等。用Java语言言编写,基于框框架层API实现。可被开发发人员
3、开开发的其其他应用用程序替替换。Android系统结结构框架层可重用的的软件组组件,简简化应用用程序的的开发,向应用用提供API。ActivityManager(活动动管理器器)管理理各个应应用程序序生命周周期以及及通常的的导航回回退功能能WindowManager(窗窗口管理理器)管管理所有有的窗口口程序Content Provider(内容容提供器器)使得得不同应应用程序序之间存存取或者者分享数数据View System(视视图系统统)构建建应用程程序的基基本组件件NotificationManager(通通告管理理器)使使应用用程序可可以在状状态栏中中显示自自定义的的提示信信息Packa
4、ge Manager(包管理理器)Android系统统内的程程序管理理ResourceManager(资源源管理器器)提供供应用程程序使用用的各种种非代码码资源,如本地地化字符符串、图图片、布布局文件件、颜色色文件等等Android系统结结构系统运行行库层系统库:连接框框架层与与Linux内内核层的的重要纽纽带,框框架层的的支撑Surface Manager:负责管管理显示示与存取取操间互互动,负负责2D与3D绘图MediaFramework:多媒体体库,支支持常用用的音频频、视频频格式录录制和回回放SQLite:小小型的关关系型数数据库引引擎OpenGL|ES:根据OpenGLES1.0AP
5、I标准实实现的3D绘图图函数库库WebKit:网页浏浏览器的的软件引引擎SSL:在Andorid上上通信过过程中实实现握手手Libc:从BSD继继承的标标准C系系统库,为基于于embeddedlinux的的设备定定制核心库:提供了了Java语言言API中的大大多数功功能,同同时也包包含了Android的一些些核心API,如android.os、android.media等等等。Dalvik虚虚拟机:一种基基于寄存存器的Java虚拟机机,而不不是传统统的基于于栈的虚虚拟机。每个Android程序都都有一个个Dalivik虚拟拟机的实实例,并并在该实实例中执执行。Dalvik虚虚拟机进进行了内内存
6、资源源使用的的优化,执行.dex文件Android系统结结构Linux内核核层Android是基于于Linux2.6内内核,其其核心系系统服务务如安全全性、内内存管理理、进程程管理、网路协协议以及及驱动模模型都依依赖于Linux内核核。除Linux标准驱动动外,需需要一些些专有驱驱动,如如Binder、Log、Ashmem等Android系统版版本发布日期版本号代号重大变化2008.91.12009.41.5Cupcake 纸杯蛋糕屏幕虚拟键盘2009.91.6Donut 甜甜圈2009.102.0/.1Eclair 松饼动态桌面、HTML52010.52.2/2.2.1Froyo 冻酸奶3G
7、网络、Flash支持2010.122.3/2.4Gingerbread 姜饼NFC2011.23.0/3.1/3.2Honeycomb 蜂巢针对平板进行优化,Fragment2011.104.0Ice Cream Sandwich冰激凌三明治全新UI2012.64.1Jelly Bean果冻豆2012.104.2Jelly Bean 果冻豆支持Miracast无线显示共享功能待定4.4Kit Kat 奇巧巧克力Android系统优势势完全开放放的系统统,吸引引越来越越多的厂厂家和消消费者,将催生生众多硬硬件支持持和程序序选择无缝结合合Google应用,如如Google地图、邮邮件、搜搜索等互互
8、联网的的重要服服务。开源软件件系统,功能强强大,支支持众多多软件,如Webkit浏览器、播放器器、FLASH等。高效的JAVA虚拟机Dalvik,支持JAVA,速度快快。Android系统劣势势版本更新新快,如如何保持持前后兼兼容完全开发发的系统统,如何何保持不不同厂家家之间兼兼容Android系统开发发涉及三个个层次:Android系统移植植开发芯片厂家家会提供供基于其其样板的的SDK,拿到其其样板及及SDK后,需要要针对我我司的具具体硬件件及产品品业务做做如下工工作:fastboot移植(DDR参数/启动流程程)、Recovery、设备驱驱动、工工厂菜单单、媒体体播放、音视频频兼容性性等A
9、ndroid子系统开开发涉及到系系统各个个层次:封装硬硬件抽象象层、增增加C/C+本地业务务库、定定义Java层所需要要的类、将本地地业务库库的功能能接口封封装成JNI、结合Java类和JNI、提供应应用程序序调用的的Java框架类等等Android应用程序序开发根据具体体产品的的业务需需求定制制开发特特定apkeclipse环境搭建建、系统统调试(Logcat、DDMS等)Android目录结结构Android开发环环境搭建建Android应用开开发环境境搭建Android系系统开发发环境搭搭建Android应用开开发环境境搭建Android应用开开发环境境搭建Android系统开开发环境境
10、搭建Android系统开开发环境境搭建Android系统开开发环境境要求:操作系统统:Ubuntu(版版本号=10.04)硬盘空间间:10GBJDK版版本:1.6(根据据android版本本而定)Python版版本:2.42.7Android系统开开发环境境搭建安装依赖赖包:64位机机器:$ sudoapt-getinstall git-core gnupg flexbisongperfbuild-essentialzipcurlzlib1g-dev libc6-devlib32ncurses5-devia32-libsx11proto-core-devlibx11-dev lib32read
11、line5-devlib32z-dev libgl1-mesa-devg+-multilib mingw32tofrodos32位机机器:$ sudoapt-getinstall git-core gnupg flexbisongperfbuild-essentialzipcurlzlib1g-dev libc6-devlibncurses5-devx11proto-core-devlibx11-dev libgl1-mesa-dev tofrodosAndroid系统开开发环境境搭建安装JDK:步骤1更更新安装装包$ sudoapt-getupdate步骤2安安装jdk1.6$ sudoap
12、t-getinstall sun-java6-jdk用户按提提示操作作即可。步骤3检检查安装装结果确认JDK版版本号正正确$ java-versionjava version1.6.0_26Java(TM)SERuntime Environment (build1.6.0_26-b03)Java HotSpot(TM) 64-BitServerVM(build 20.1-b02,mixedmode)Android系统开开发环境境搭建安装python:python工工具的安安装:$ sudoapt-getinstall pythonAndroid系统开开发环境境搭建安装交叉叉编译工工具链(his
13、ilicon)当第一次次拿到海海思开发发包,或或遇到发发布包中中交叉编编译工具具链的版版本更新新时,需需重新安安装编译译工具链链交叉编译译工具链链:arm-hisiv200-linux在交叉工工具链安安装包目目录下执执行命令令:./cross.installAndroid系统开开发环境境搭建编译源码码(hisilicon)解压海思思提供的的开发包包进入解压压后的目目录,设设置编译译环境/home/work/ics$ sourcebuild/envsetup.sh/home/work/ics$ lunch full_godbox-eng编译环境境只需设设置一次次即可进进行多次次编译。但切换换 s
14、hell 环境境,则需需要重新新设置。编译/home/work/ics$ ./mk-all.sh4(并发线线程数,根据服服务器性性能自行行调整)Android系统开开发环境境搭建编译后在在out目录下下会生成成二进制制文件:outtargetproductgodbox:userdata.ics.yaffs2_xkybsystem.ics.yaffs2_xkybrecovery.imgkernelx 表示示NANDFLASH的页页大小page size(bytes为单位位)y 表示示ECC 校验验位数目前板子子配置是是2k1bAndroid系统开开发环境境搭建-烧写Flash将bootableb
15、ootloaderfastboot3.0fastboot_burn目录拷贝贝出来,里面包包含烧录录工具FastBoot3.1.8.exe准备好tftp升级工工具,并并将编译译源码中中生成的的文件拷拷贝到tftp升级工工具所指指向的目目录下准备板子子及串口口线,准准备进行行烧录Android系统开开发环境境搭建-烧写写u-bootAndroid系统开开发环境境搭建-烧烧写kernel及system等等使用李铁铁柱发布布的tftp工工具,将将kernel及system、userdata、recovery等按按照划分分的各个个分区的的Flash地地址进行行烧录。参考分区区如下:Android系统开开
16、发环境境搭建-配置bootargs进入u-boot,在在串口下下输入如如下命令令:setbootcmdnandread 82000000 2e00000a00000;bootm0 x82000000setappargsmem=764Mvmalloc=600M console=ttyAMA0,115200mtddev=blackbox androidboot.console=ttyAMA0mtdparts=hinand:1024K(fastboot),512K(bootargs),512K(envback),512K(cfg),512K(cfgback),3840K(recovery),128K
17、(deviceinfo),128K(baseparam),4M(logo),4M(fastplay),30M(cache),1M(misc),10M(kernel),180M(system),128M(userdata),10M(commondata),1M(blackbox),136M(sdcard)setrecoverybootargsmem=808Mconsole=ttyAMA0,115200mtdparts=hinand:1024K(fastboot),512K(bootargs),512K(envback),512K(cfg),512K(cfgback),3840K(recovery
18、),128K(deviceinfo),128K(baseparam),4M(logo),4M(fastplay),30M(cache),1M(misc),10M(kernel),180M(system),128M(userdata),10M(commondata),1M(blackbox),136M(sdcard)save烧录成功功,重启启机顶盒盒即可启启动Android开发环环境搭建建至此,Android开发环环境搭建建成功。参考文档档:Android系统启启动流程程分析Android启动流流程分析析Android启动流流程Android从Linux系统启动动有4个步骤;Init进程启动动Native服务启动动SystemServer服务启动动Launcher启动Android启动流程程第一步:initial进程(system/core/init)Init
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026押题老师面试题及答案大全
- 2026应届生最终面试题及答案
- 2026在岗民警面试题及答案
- 少年立志:展望人生蓝图的小学主题班会课件
- 2026大冶社区面试题及答案
- 国家地理探险:发现世界的奇妙小学主题班会课件
- 2026江西吉安市吉水县城控人力资源服务有限公司招聘劳务外包人员2人(五)考试备考试题及答案详解
- 2026四川绵阳市三台县妇幼保健院 招聘编外聘用人员2人笔试备考题库及答案详解
- 职业卫生技术服务专业技术人员考试(职业卫生检测)模拟题库及答案(2026年新乡)
- 2026重庆聚狮新材料科技有限公司招聘1人笔试备考题库及答案详解
- 拆迁服务保密措施方案(3篇)
- 江西中医药大学《医学统计学一》2023-2024学年第二学期期末试卷
- T/CGCC 81-2023自有品牌术语与定义
- T/CCSAS 025-2023化工企业作业安全分析(JSA)实施指南
- 个体诊所突发公共卫生事件应急预案
- 《阻燃化学品 焦磷酸哌嗪》文本及编制说明
- 交警辅警法制培训
- 12MWh储能项目可行性研究报告
- 《克罗恩病护理》课件
- 华中师范大学人文地理学、自然地理学考研王静爱《中国地理教程》课后思考题答案
- 每月(质量)安全调度会议纪要
评论
0/150
提交评论