菜单
  

    2    技术支持和分析
    2.1    Android系统架构和结构
    Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为4层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。
     
    图 2.1  android系统架构
    Android系统结构主要包括系统内核、硬件抽象层、中介软件和安全权限机制。
    Android 是运行于Linux kernel之上,但并不是GNU/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android又以Bionic 取代Glibc、以Skia 取代Cairo、再以opencore取代FFmpeg等等。Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,
    Android 的HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kernel,以达成 Kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展。
    操作系统与应用程序的沟通桥梁,应用分为两层:函数层(Library)和虚拟机(Virtual Machine)。采用OpenCORE作为基础多媒体框架。 使用skia 为核心图形引擎,搭配OpenGL/ES。Android的多媒体数据库采用SQLite数据库系统。数据库又分为共用数据库及私用数据库。中间层多以Java 实现,并且采用特殊的Dalvik 虚拟机(Dalvik Virtual Machine)。Dalvik虚拟机可以有多个实例(Instance), 每个Android应用程序都用一个自属的Dalvik虚拟机来运行,让系统在运行程序时可达到优化。
    Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。系统更多的安全功能通过权限机制提供。权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问。
    2.2    Android应用组件
    Android开发四大组件分别是:活动(Activity),用于表现功能。服务(Service),后台运行服务,不提供界面呈现。广播接收器(BroadcastReceiver),用于接收广播。内容提供商(Content Provider),支持在多个应用中存储和读取数据,相当于数据库。
    Android 中,Activity是所有程序的根本,所有程序的流程都运行在Activity 之中,Activity可以算是开发者遇到的最频繁,也是Android 当中最基本的模块之一。在Android的程序当中,Activity 一般代表手机屏幕的一屏。如果把手机比作一个浏览器,那么Activity就相当于一个网页。在Activity 当中可以添加一些Button、Check box 等控件。可以看到Activity 概念和网页的概念相当类似。
    Service 是android 系统中的一种组件,它跟Activity 的级别差不多,但是它不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service 是没有界面的长生命周期的代码。Service是一种程序,它可以运行很长时间,但是它却没有用户界面。
    在Android 中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver 是对发送出来的Broadcast进行过滤接受并响应的一类组件。可以使用BroadcastReceiver 来让应用对一个外部的事件做出响应。
    在Android中,对数据的保护是很严密的,除了放在SD卡中的数据,一个应用所持有的数据库、文件等内容,都是不允许其他直接访问的。Andorid当然不会真的把每个应用都做成一座孤岛,它为所有应用都准备了一扇窗,这就是Content Provider。应用想对外提供的数据,可以通过派生Content Provider类, 封装成一枚Content Provider,每个Content Provider都用一个uri作为独立的标识。
  1. 上一篇:超市库存系统的国内外研究现状和发展趋势
  2. 下一篇:JSP+mysql药品销售及管理系统设计与实现+用例图
  1. JAVA基于安卓平台的医疗护工管理系统设计

  2. 基于Hadoop的制造过程大数据存储平台构建

  3. php+mysql志愿者服务平台前端页面设计

  4. 《网站设计与管理》课程...

  5. Justep基于开放平台的企业...

  6. 基于IOS的游戏资讯平台的设计与实现

  7. android学习行为共享系统的设计与实现

  8. 中考体育项目与体育教学合理结合的研究

  9. 十二层带中心支撑钢结构...

  10. 河岸冲刷和泥沙淤积的监测国内外研究现状

  11. 乳业同业并购式全产业链...

  12. java+mysql车辆管理系统的设计+源代码

  13. 大众媒体对公共政策制定的影响

  14. 当代大学生慈善意识研究+文献综述

  15. 杂拟谷盗体内共生菌沃尔...

  16. 电站锅炉暖风器设计任务书

  17. 酸性水汽提装置总汽提塔设计+CAD图纸

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回