Android 四层架构如下图所示:

- Application(APP)
- Framework(Manager)
- Library(WebKit、SQLite)+Android RunTime
- Linux Kernal(Driver)
我们可以称Framework层是Andriod中最底层的Java代码,它把与服务抽象出来,作为API给Application调用,它包含了JNI的方法,通过JNI调用c、c++(Library),最终访问到Linux内核。
Framework包含以下服务:
Activity Manager:用来管理应用程序生命周期并提供常用的导航回退功能。
Window Manager:提供一些我们访问手机屏幕的方法。屏幕的透明度、亮度、背景。
Content Providers:使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据。
View System:可以用来构建应用程序, 它包括列表(Lists),网格(Grids),文本框(Text boxes),按钮(Buttons), 甚至可嵌入的web浏览器。
Notification Manager:使得应用程序可以在状态栏中显示自定义的提示信息。
Package Manager:提供对系统的安装包的访问。包括安装、卸载应用,查询permission相关信息,查询Application相关信息等。
Telephony Manager:主要提供了一系列用于访问与手机通讯相关的状态和信息的方法,查询电信网络状态信息,sim卡的信息等。
Resource Manager:提供非代码资源的访问,如本地字符串,图形,和布局文件(Layout files )。
Location Manager:提供设备的地址位置的获取方式。很显然,GPS导航肯定能用到位置服务。
XMPP:可扩展通讯和表示协议。前身为Jabber,提供即时通信服务。例如推送功能,Google Talk。
网友评论