毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

基于Android平台的App通用框架设计与开发(3)

时间:2020-05-25 19:55来源:毕业论文
2.1.1 Android架构 Android平台系统的架构主要包括四层:内核层、系统运行库层、应用框架层以及应用层等四层组成[5]。其框架架构图如图2-1所示。 Android系统

2.1.1 Android架构

Android平台系统的架构主要包括四层:内核层、系统运行库层、应用框架层以及应用层等四层组成[5]。其框架架构图如图2-1所示。

 Android系统架构图

 应用层(Application)[6]

这一层主要是由在Dalvil虚拟机的各种应用程序。Dalvil 与J2ME虚拟机是两种不同类型的虚拟机,Dalvil虚拟机是专门为Android系统设计的基于寄存器的Java虚拟机,以便利用Java语言开发应用程序更高效地运行。应用层上的应用程序有很多,例如:日历、地图、电话拨号、时钟、浏览器、短信、联系人管理等。

应用框架层(Application Framework)[7]

开发人员可以和 Linux 核心应用一样,拥有访问整个框架 API(应用程序接口)的权限。而应用框架层则是由以下部分组成:视图、内容提供器、资源管理器、通知管理器、活动管理器等。

系统运行库层(Libraries)[8]

系统运行库层主要是由名叫NDK开发库组成的,此开发库的开发语言使用了C/C++语言,在运行方面更加的高速,而且这个NDK开发库可以直接对系统的硬件进行访问,然而在这方面Java语言并没有这个功能,也不允许Java语言编写的程序对硬件设备进行直接访问。NDK库主要包括C语言标准库(libc)、多媒体库(Media Framework)、OpenGL ES、SQLite、Webkit、Dalvik虚拟机等。开发人员可以直接通过这些开发库对应用框架层提供支持。

系统运行层库除了有C/C++语言开发设计的NDK开发库外,还有一个核心库组成。核心库提供了JAVA语言编程时可能使用到的大部分核心类库。

Dalvik虚拟机也在这一层。Dalvik虚拟机可执行文件格式是*.dex的格式文件专门为小内存,处理器速度缓慢移动平台进行了优化。

Linux 内核层(Linux Kernel)[9]

Linux内核层通过组成其的驱动程序模型、内存管理、进程管理、网络协议栈的不同组件来为软件和硬件抽象层提供统一的服务。目前Android使用版本为 2.6 的Linux内核提供核心系统服务。

2.1.2 Android组件

Andriod架构里定义了四种应用程序结构,分别是活动(Activity)、服务(Service)、广播和Intent接收器(Broadcast and Intent Receivers)、内容提供器(Content Provider),这四种结构构建了几乎所有的Android应用程序。[10]

活动(Activity)

与Windows操作系统独立于应用程序相类似的是Android系统定义的活动也独立于系统而运行。活动是由一些可执行代码,用户或系统活动将在必要时启动。活动可以与用户交互,也可以通过查询(查询)和意图组件其他活动或服务获取数据和服务。活动通常要负责屏幕的显示,每一个活动一般都有一个对应的界面,如果活动的不在处于活动状态,系统可以将它结束以提高智能手机内存的利用率。[11]

服务(Service)

Android系统中的服务同过可执行代码实现,服务在启动会在后台持续进行,直到关机。一般情况下服务是没有用户交互界面的。

Android生命周期包括活动的生命周期和服务的生命周期。Android活动的生命周期定义的是一个活动从开始,到创建活动,直到活动结束期间所有发生的事件或状态。程序开发人员设计的活动可以通过重载Activity基类的方法来对各种事件和消息进行监听与处理。[12]

Android服务生命周期与前面讲的Android活动生命周期实现方式差不多,主要是实现的细节上有所差别。一般服务来讲不想活动有界面显示那么直观,而是在后台启动,需要首先执行创建服务,接着开始启动服务,如果前台请求一项服务时,后台未开始启动该项服务,则后台会首先创建服务,接着开始启动该项服务,直至用户中止该项服务位置。一个被认为是单独运行的服务,其启动服务可能会在服务运行过程中,多次被执行启动服务。图 2-3 是Android服务(Service)的生命周期示意图。[13] 基于Android平台的App通用框架设计与开发(3):http://www.youerw.com/jisuanji/lunwen_52793.html

------分隔线----------------------------
推荐内容