基于Android嵌入式平台传感器应用开发水平仪
摘要:详细介绍了如何利用Android系统的传感器开发水平仪应用的全过程。通过对该案例开发的讲解,介绍了传感器应用的开发方法以及通过Eclipse开发Android应用程序的过程。
1Android平台简介
互联网巨头Google公司于2007年11月5日推出了全新的嵌入式软件平台---Android,该平台由操作系统、中间件、用户界面以及应用软件组成,是一个真正开放的移动应用开发平台。
2007年11月初,Google与其他33家手机厂商、软硬件供应商、手机芯片供应商、移动运营商联合组成了开放手机联盟(OpenHandsetAlliance),发布了名为Android的手机软件平台,并宣布该平台完全开放。同时Google希望Android平台成为一套标准化、开放式的移动嵌入式软件平台。
由于Android系统具有开发性、平等性、无界性以及方便性等优点,所以很快被业界所接受。从2008年初开始,越来越多的开发人员投身到Android应用的开发当中。
而Android系统的一大亮点之一就是传感器的使用,利用传感器可以开发出很多新奇有趣的应用程序。例如计步器、水平仪,甚至在很多游戏中都可以使用传感器来操作游戏。传感器的种类有很多种,其中包括加速度传感器、姿态传感器、磁场传感器、温度传感器以及光传感器等,介绍的水平仪应用就是使用姿态传感器的。
2案例功能
将结合水平仪案例的开发详细介绍如何在Android平台下开发传感器应用,下面首先对水平仪的功能及界面进行简单的介绍。
2。1程序界面
程序运行后的效果如图1所示,用户可以通过调整手机的姿态来控制界面中各个气泡的位置。与真正的水平仪一样,在使用手机水平仪时,需要将手机平放到某个平面上才可以。
图1 水平仪应用程序界面
2。2软件功能
运行该程序,当改变手机的姿态时,界面中的气泡便会根据手机的姿态向高处进行相应的移动。
当手机所处的平面水平时,各个气泡都应该位于中间的指定区域。
3开发环境搭建
正式进入代码开发之前,首先需要对开发环境进行搭建,其搭建步骤如下所列。
(1)安装Java开发环境JDK。
(2)从网上下载Android开发环境SDK的压缩包,并将其解压到磁盘上的某个位置。
(3)将SDK解压目录中的tools目录添加到系统的PATH环境变量中。
(4)下载并安装Eclipse集成开发环境。
(5)为Eclipse安装Android开发插件ADT,并在Eclipse的Preferences中配置Android插件的SDKLocation。
(6)在Eclipse的AVDManager中创建Android虚拟设备(AVD),并启动模拟器。
(7)下载并安装用来调试Android传感器应用的Sensorsimulator传感器模拟器软件。
(8)在模拟器中安装Sensorsimulator所对应的apk文件并对其进行调试使Sensorsimulator应用程序能够与Android模拟器进行通信。
4开发前的准备
前面完成了开发环境的搭建,但在正式进行代码开发之前,还需要再做一些开发前的准备工作,其步骤如下:
(1)首先启动之前安装好Eclipse。
(2)然后依次点击File|New|Other|Android|AndroidProject进入项目的创建界面。
(3)在项目创建界面中,输入项目的名称、所使用的目标平台、所在的包名等信息,如图2所示。
图2 在Eclipse 中创建Android 项目
(4)点击Finish完成项目的创建。
(5)在程序中将会用到的图片资源存放到项目文件夹的res/drawable-mdpi目录下,如图3所示。
图3 图片资源
(6)为应用程序引入调试时使用的Sensorsimulator支持jar包,该jar包位于Sensorsimulator安装目录中的bin目录下:
5自定义View的开发
本案例需要自定义一个View来绘制水平仪的用户界面,首先需要在项目文件夹的src/wyf/ytl目录下创建一个名为Main-View的java类,并使其继承自View类,其代码框架如下:
packagewyf。ytl;//声明所在包
importandroid。content。Context;//引入Context类
importandroid。graphics。Bitmap;//引入Bitmap类
importandroid。graphics。BitmapFactory;//引入相关类
importandroid。graphics。Canvas;//引入Canvas类
importandroid。graphics。Color;//引入Color类
importandroid。graphics。Paint;//引入Paint类
importandroid。graphics。RectF;//引入RectF类
importandroid。graphics。Paint。Style;//引入Style类
importandroid。util。AttributeSet;//引入AttributeSet类
importandroid。view。View;//引入View类
publicclassMainViewextendsView{
Paintpaint=newPaint();//画笔
//图片资源的声明
BitmapshangBitmap1;//上面的大矩形图
BitmapshangBitmap2;//上面的气泡
BitmapzuoBitmap1;//左面的大矩形图
BitmapzuoBitmap2;//左面图的气泡
BitmapzhongBitmap1;//中间的大圆图
Bitmapzhong
应用开发 水平 传感器 平台 Android 嵌入式 基于 相关文章:
- iOS平台应用开发的敏捷设计流程(09-12)
- SPE61A单片机的非接触式高压验电器的应用开发(06-23)
- 采用PDIUSBD12芯片的USB应用开发(05-02)
- 基于Android的多媒体应用开发与研究(03-05)
- 嵌入式PLC芯片组的多路模拟量应用开发(12-12)
- 基于PDIUSBD12芯片的USB应用开发(08-12)