展会信息港展会大全

android体系结构
来源:互联网   发布日期:2016-01-14 12:18:56   浏览:1986次  

导读:android体系结构介绍:如图:l应用程序(application)l应用程序框架(Application Framework)l各种库和android运行环境l操作层OSOslash;应用程序(application):android的应用程序通常涉及用户界面和交互;......

android体系结构介绍:如图:

l应用程序(application)

l应用程序框架(Application Framework)

l各种库和android运行环境

l操作层OS

应用程序(application):android的应用程序通常涉及用户界面和交互;

应用程序框架(application Framework):

1.一组view(UI组件):这些UI组件包括List、textbox、button;

2.Content Provider:提供一种机制,通过这个机制应用程序可是实现数据库共享和互访;

3.Resourse Manager:负责管理非代码的访问,如图片、xml以及国际化资源文件;

4.Notification Manager:让程序将警示信息显示在状态栏上;

5.Activity Manager:管理着应用程序的生命周期,提供了应用程序页面的退出机制,一个应用程序由多个页面你组成,而每个页面的单位就是Activity,android应用程序是由多个activity的交互构成;

库(Libraries)和运行环境(Run Time):

1.系统C库:一个从BSD 继承来的标准C系统函数库(LibC),他是专门基于嵌入式Linux的设备定制的;

2.媒体库:基于packet Video OpenCORE,该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件;

3.Surface Manager:对显示子系统的管理,并且为多个应用提供了2D和3D图层的无缝融合;

4.Lib WebCore:一个最新的web浏览器引擎,用来支持android浏览器和一个可嵌入的web试图;

5.SGL:底层的2D图引擎;

6.3D libraries:基于openGL ES 1.0 apis实现,该库可以用硬件3d加速或者使用高度优化的3D软加速;

7.FreeType:位图(bitmap)和vector字体显示;

8.Sqlite:关系型数据库;

每个android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例,Dalvik被设计成一个设备,可以同时高效的运行多个虚拟机设备。Dalvik虚拟机执行的(.dex)Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经过由Java 编译器,然后通过sdk的 dx 工具转化成dex格式,有虚拟机执行。

Android应用程序介绍:

一般android应用程序包括以下四个部分:

lActivity

lBroadcast Intent Receiver

lService

lContent Provider

1.Activity介绍:

Activity一般代表手机屏幕的一屏,相当于浏览器的一个页面。当打开一个屏幕时,之前的那一个屏幕会被置为暂停状态,并且压入历史堆栈中,用户可以通过回退操作返回到以前打开过的屏幕。

开发时需要选择行的移除没有必要保留的屏幕,因为打开后的屏幕会保存在堆栈中

Android的生命周期:即 产生、运行、销毁

Intent和Intent Filter介绍:一个Intent就是一次对将要执行的操作的抽象描述,通过Intent可以在多个Activity之间进行跳转,Intent两个最重要的部分是动作(action)和动作对应的数据,典型的动作类型有,MAIN、view、pick、edit等,而动作对应的数据则以URI的形式表示;例如有两个activity分别为A和B,要从A跳转到B可以这样写

Intent intent = new Intent(A.this, B.class);

startActivity(intent);

与Intent有关联的类叫做Intent Filters,如果Intent是一个请求,一个Intent Filters描述改组件所能相应Activity请求的能力。

2.Broadcast Intent Receiver介绍:

可以使用BroadcastReceiver来让应用对外一个外部的事件作出响应。BroadcastReceiver通过NotificationManager来通知用户这些事情发生了,BroadcastReceiver注册的有两种方式,一种是可以在AndroidManifest.xml中注册,另一种可以在运行时的代码中使用Context.registerReceiver()进行注册。用户还可以通过Context.sendBroadcast()将他们自己的intent broadcasts广播给其他的应用程序。

3.Service介绍:

Service是一种程序,它可以运行很长的时间,相当于后台的一个服务,通过startService(Intent service)可以启动一个Service,通过Context.bindService()可以绑定一个Service

4.Content Provider介绍:

数据在android当中是私有的,这些数据包括文件数据和数据库数据以及其他类型的一些数据。两个程序之间数据的交互是通过Content Provider来实现,一个Content Provider实现了一组标准的接口,能够让其他应用保存或读取此Content Provider的各种数据类型。所以一个程序可以通过实现以个Content Provider的抽象接口将自己的数据暴露在外面,实现常见的接口有:

Query(URI,String[],String,String[],String):通过关键字查询;

Insert(Uri,ContentValues):将一组数据插入到指定的地方 ;

Update(Uri,ContentValues,String,String[]):更新数据;

Delete(Uri, String, Stringp[]) :删除数据;

赞助本站

人工智能实验室

相关热词: android体系结构

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港