本文所提到的AL3003,是一个距离、光线二合一传感器。AL3003拥有I2C接口,与系统所提供的接口方式完全吻合,均基于I2C总线协议。因此,在为AL3003开发I2C驱动的时候可以依据I2C设备驱动程序的开发方式。本篇文章将重点叙述传感器的驱动和在手机解锁软件中的应用。

1。 Android历史及现状

Android操作系统是一个由Google开发的移动设备操作系统,从2007年11月15日发布的第一个版本开始,至今已经发布了多种版本更新。随后Google以免费开源授权的方式公布了Android的源代码,这一举动使Android系统迅速的占领了大量的市场,主要使用于各类移动设备,现在在平板电脑、游戏机等其他便携式设备上也会看到Android系统的身影。2011年,Android的市场销量超过Symbian,跃居全球第一[1]。

2。 相关技术介绍

2。1 Android系统

Android系统作为操作系统和软件搭载平台应用于智能手机上,它采用的形式为软件堆层,由三部分构成:最上层的是由开发人员用Java开发出来的关键应用程序、中间是中间件、位于最下端的是基于Linux的操作系统。

Android系统主要框架如图1所示,其中包含了应用层、应用框架层、内核层、标准库层和硬件抽象层。下面介绍每层的具体内容。

2。1。1 应用层

Google在发布Android的同时,还发布了一些比较核心的应用程序,如通讯录、日历、地图等。开发者可以利用开源代码,使用Java随意开发自己的应用。这与其他智能手机操作系统完全不同,是本文选取Android为搭载平台的主要原因。

Android整合出来四类核心组件,具体作用各不相同,分别为:Service组件、Content Provider组件、Broadcast Receiver组件、和Activity组件[2]。

图1 Android框架图

(1) Activity (活动组件): 在Android应用中,对Activity的管理是通过堆栈的形式进行的,在多个Activity中,每一个Activity都拥有一个独立的窗口。在程序运行的过程中,系统会从堆栈中选取当中一个Activity进行窗口展示,在选取到下一个Activity时,前一个会自动放回堆栈,直至下一次被唤醒。

(2) Service (服务组件): Service属于后台运行程序,没有用户可视化界面。

(3) Content Provider (内容提供组件): 为其他应用程序创建所需的数据,实现不同组件之间的数据共享。

(4) Broadcast Receiver (广播接受组件): 用来进行系统内的信息共享。

2。1。2 应用框架层

应用框架层是为应用程序提供各种编程接口,开发人员可以根据自身需求使用框架来开发应用。应用框架层的主要组件有:

(1) 视图组件:用来构建文本框、表格等应用程序。

(2) 活动管理器:管理应用程序的形态,如创建、暂停、终止等。

(3) 内容管理器:可以使应用程序间相互访问,达到数据共享的目的。

(4) 包管理:管理的对象为Android系统内的程序。

(5) 资源管理器:提供资源访问,与代码无关。

(6) 消息管理器:使部分程序在通知栏显示所需信息。

(7) 窗口管理器:对所有窗口程序进行管理。

2。1。3 标准库层

Android中含有源代码库,我们使用各个组件时可以得到源代码库的支持,从而完成对Android应用框架的操作。

SGL: 2D图形引擎库。

SQ Lite: 可用轻型关系数据库引擎

Bionic系统C库: 里面含有C语言标准库,通过Linux系统进行调用,位于整个系统的最低端。

Web kit: Web浏览器引擎。

3D libraries: 优化3D效果。

多媒体库:能对现有的多种格式的影视作品进行播放,也可录制不同格式的影视作品。

上一篇:Flexsim立体仓库规划设计+CAD图纸
下一篇:局部搜索算法在函数优化中的比较研究

基于蓝牙和安卓的仪器专用APP的设计和开发

安卓App安全性测试与实现

C#+sqlserver安卓系统性能测试工具的设计与实现

基于安卓平台的运动交友APP设计

安卓上课考勤系统设计+需求分析+总体设计

基于安卓的相量计算APP的开发+源代码

安卓音乐播放软件设计与开发

新課改下小學语文洧效阅...

安康汉江网讯

麦秸秆还田和沼液灌溉对...

网络语言“XX体”研究

老年2型糖尿病患者运动疗...

我国风险投资的发展现状问题及对策分析

互联网教育”变革路径研究进展【7972字】

张洁小说《无字》中的女性意识

ASP.net+sqlserver企业设备管理系统设计与开发

LiMn1-xFexPO4正极材料合成及充放电性能研究