03、Android系统架构简介
1、Android开发系统架构图
2、系统架构介绍
1)、Application(应用层)
Android应用层提供的服务即我们常说的应用程序,它是与用户直接交互的,如系统自带的日历(calendar)、通话(phone)、短信(SMS)、联系人(Contacts)、浏览器(Browser)等以及我们在Android应用商店(不同的手机品牌叫法不一样)中下载的打飞机游戏、音乐软件等,其提供了实实在在的功能供用户使用。2)、Android Application Framework(应用框架层)
Android应用框架层提供了开发Android应用程序所需的一系列类库,通常是系统API接口,使开发人员可以方便、快速地构建应用整体框架,其具体的模块内容及功能如下:
(1)Activity Manager(活动管理器):管理各个应用程序活动窗口并为窗口提供交互的接口;
(2)Window Manager(窗口管理器):管理所有开启的窗口程序;
(3)Content Provider(内容提供者):提供应用内或应用程序间数据共享功能;
(4)View System:创建应用程序基本视图组件,如ListView、TextView、WebView等控件;
(5)Notification Manager(通知管理器):用户可以自定义状态栏中的提示信息;
(6)Package Manager(包管理器):应用程序安装进手机后,以包名作为文件夹名进行存储,此API提供诸如应用程序的安装与卸载功能以及提示相关的权限信息;
(7)Resource Manager(资源管理器):提供图片、音视频等非代码资源;
(8)Location Manager(位置管理器):提供位置信息服务;
(9)Telephony Manager(电话管理器):管理所有移动设备功能;
(10)XMPP服务:Google提供的后台推送服务;
3)、Libraries and Android Runtime(系统库及Android运行时,系统运行库层)
系统库提供了系统功能通过Android应用程序框架层为开发者提供服务,其类库的内容主要包含数据库、2D/3D图形处理引擎、多媒体库、数据传输服务等。另外,Android NDK(Android Native Development Kit,Android原生库)也为开发者提供了直接使用Android系统资源的能力。
Android运行时包含核心库与Dalvik虚拟机两部分。
(1)核心库提供了Java SE API 的绝大多数功能,并提供Android的核心API,如android.os、android.net、android.util、android.meida等。
(2)Dalvik虚拟机是基于Apache的Java虚拟机,被改进以适应低内存、低处理速度的移动设备环境,负责运行Android应用程序,提供实现进程隔离与线程调试管理、安全和异常管理、垃圾回收等重要功能。