- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1 Andrd系统简介及开发环境的搭建
1了解Android系统
1.1 Android系统介绍
Android是Google 开发的基于 Linux 平台的、开源的、智能手机操作系统。Android 包括操作系统、中间件和应用程序,由于源代码开放,Android 可被移植到不同的硬件平台上。
围绕在 Google的 Android 系统中,形成了移植开发和应用程序开发两个不同的开发方面。手机厂商从事移植开发工作,应用程序开发可以由任何单位和个人完成,开发的过程可以基于真实的硬件系统,还可以基于仿真器环境。
作为一个手机平台,Android 在技术上的优势主要有以下几点:
全开放智能手机平台
多硬件平台的支持 :应用程序可通过标准API访问核心移动设备功能。
使用众多的标准化技术 :可以轻松的嵌入HTML、JavaScript等网络内容
核心技术完整,统一 :应用程序是平等条件创建的,可被替换或扩展。
应用程序可以并行运行。Android是完整的多任务环境,在后台运行时,应用程序可生成通知引起用户注意。
完善的 SDK 和文档
完善的辅助开发工具
Android 的开发者可以在完备的开发环境中进行开发,Android 的官方网站也提供了丰富的文档、资料。这些都使得 Android 系统的开发和运行在一个良好的生态环境中。
1.2 Android系统的软件结构
Android 是一个开放的软件系统,它包含了众多的源代码。从下至上,Android 系统分成4个层次:
第 1 层次:Linux 操作系统及驱动;
第 2 层次:本地代码框架,包含各种类库和运行环境;
第 3 层次:Java 框架;
第 4 层次:Java 应用程序。
Android 的第 1 层次由 C 语言实现,第2层次由 C 和/C++实现,第3、4层次主要由 Java代码实现。对于 Android 应用程序的开发,主要关注第3层次和第4层次之间的接口。
Android 系统的架构如图所示:
1.2.1操作系统(OS)---第一层
Android 的核心系统服务依赖于Linux 2.6 内核,操作系统为Android提供的服务包括:
安全性(Security)。
内存管理(Memory Management)
进程管理(Process Management)
网络堆栈(Network Stack)
驱动程序模型(Driver Model),包含以下这些常规的驱动程序:
(1)Display Driver
(2)Keypad Driver
(3)Camera Driver
(4)WiFi Driver
(5)Flash Memory Driver
(6)Audio Driver
(7)Binder(IPC) Driver
(8)Power Management
1.2.2库(Libraries)和运行环境(RunTime)---第二层
这层中包含了C/C++库以及Android运行库:
系统C库(libc):一C系统函数库(libc),专门为基于嵌入式Linux的设备定制。
媒体库(Media Framework):基于PackeVideo OpenCore,支持多种常用的音频,视频格式以及回放和录制,同时支持静态图像文件。编码格式包括:MPEG4、H.264,MP3、AAC、AMR、JPG、PNG。
Surface Manager:对显示子系统的管理,并且为多个应用提供2D,3D图层的无缝融合。
WebKit:web浏览器引擎,用来支持Andiroid浏览器或者嵌入的web视图。
SGL:底层的2D图形引擎。
OPENGL|ES:基于OpenGL ES 1.0 APIs实现,可以使用硬件3D加速或者使用高度优化的3D软加速。
FreeType:位图(bitmap)和适量(vector)字图显示支持。
SQLite:一个对所有应用程序可用,功能强大的轻量级关系型数据库引擎。
Core Libraries:该核心库提供了Java编程语言核心库的大多数功能。
Dalvik VM:android平台的一个虚拟机,它相当于PC中Java的虚拟机JVM。
1.2.3应用程序框架(Application Framework)---第三层
普通开发者可以使用Android基本应用程序使用的系统API,android 应用框架中的各个模块都可以被复用,各种服务也可以被复用。开发过程中常用到的基本框架组件如下:
一组View(UI 组件): UI组件包括Button(按钮),EidtText(文本框),TextView(标签),List(列表)等,灵活运用这些组件可快速方便的创建良好的用户交互界面。
Content Providers(内容提供者):是一种服务,通过这种服务应用程序之间可以实现数据的互相
文档评论(0)