您现在的位置:e-works > 百味书屋 > 书籍列表 > Android开发完全实战宝典 > Android组件结构应用程序框架

第一章 揭开Android的神秘面纱

第四节 Android组件结构应用程序框架

    和主流的开发工具一样,Android也有自己的组件,在本节的内容中,将简要介绍Android组件结构应用程序框架的基本知识。

    1.4.1  Android组件结构

    Android采用了软件堆层(Software Stack,又名软件叠层)的架构,低层以Linux内核为基础,只提供基本功能,其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。

    1.4.2  Android应用程序框架

    Android会同一个核心应用程序包一起发布,该应用程序包包括Email客户端、SMS短消息程序、日历、地图、浏览器及联系人管理等程序。所有的应用程序都是用Java编写的。

    开发者也完全可以访问核心应用程序所使用的API框架。该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块,并且任何其他的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。该应用程序重用机制使得组件可以被用户替换。

    以下所有的应用程序都由一系列的服务和系统组成。

    ·一个可扩展的视图(Views):可以用来建立应用程序,包括列表(Lists)、网格(Grids)、文本框(Text Boxes)、按钮(Buttons),甚至包括一个可嵌入的浏览器。

    ·内容管理器(Content Providers):使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。

    ·一个资源管理器(Resource Manager):提供非代码资源的访问,如本地字符串、图形和分层文件(Layout Files)。

    ·一个通知管理器(Notification Manager):使得应用程序可以在状态栏中显示客户通知信息。

    ·一个活动类管理器(Activity Manager):用来管理应用程序生命周期并提供常用的导航回退功能。

    一个Android程序编译运行后的效果如图1-3所示。

    Android程序运行效果

    图1-3  Android程序运行效果

    Android系统提供给应用开发者一个框架,所有的应用开发都必须遵守这个框架的原则。在开发应用时就是在这个框架上进行扩展,下面来看Android框架都有些什么功能可供使用。

    ·android.app:提供高层的程序模型和基本的运行环境。

    ·android.content:包含对各种设备上的数据进行访问和发布。

    ·android.database:通过内容提供者浏览和操作数据库。

    ·android.graphics:底层的图形库,包含画布、颜色过滤、点及矩形等,可以将它们直接绘制到屏幕上。

    ·android.location:定位和相关服务的类。

    ·android.media:提供一些类管理多种音频、视频的媒体接口。

    ·android.net:提供帮助网络访问的类,超过通常的java.net.* 接口。

    ·android.os:提供了系统服务、消息传输和IPC机制。

    ·android.opengl:提供OpenGL的工具。

    ·android.provider:提供访问Android内容提供者的类。

    ·android.telephony:提供与拨打电话相关的API交互。

    ·android.view:提供基础的用户界面接口框架。

    ·android.util:涉及工具性的方法,例如时间日期的操作。

    ·android.webkit:默认浏览器操作接口。

    ·android.widget:包含各种UI(界面元素)元素在应用程序的布局中使用。