基于Android嵌入式平台传感器应用开发水平仪
+(mv。xiaBitmap1。getWidth()/2-28)*pitch)/k);
tempY=-(int)((-(mv。xiaBitmap1。getWidth()/2-28)*roll
-(mv。xiaBitmap1。getWidth()/2-28)*pitch)/k);
//限制下面的气泡范围
if(tempY>mv。xiaBitmap1。getHeight()/2-28){
tempY=mv。xiaBitmap1。getHeight()/2-28;
}
if(tempY-mv。xiaBitmap1。getHeight()/2+28){
tempY=-mv。xiaBitmap1。getHeight()/2+28;
}
if(tempX>mv。xiaBitmap1。getWidth()/2-28){
tempX=mv。xiaBitmap1。getWidth()/2-28;
}
if(tempX-mv。xiaBitmap1。getWidth()/2+28){
tempX=-mv。xiaBitmap1。getWidth()/2+28;
}
mv。xia2_X=tempX+mv。xia1_X
+mv。xiaBitmap1。getWidth()/2
-mv。xiaBitmap2。getWidth()/2;
mv。xia2_Y=tempY+mv。xia1_Y
+mv。xiaBitmap1。getHeight()/2
-mv。xiaBitmap2。getWidth()/2;
if(isContain(x,y)){//中间的水泡在圆内才改变坐标
mv。zhong2_X=x;mv。zhong2_Y=y;
}
mv。postInvalidate();//重绘MainView
}
}
在onSensorChanged方法中首先得到pitch轴以及roll轴的数值,然后根据该数值的大小调整水泡在屏幕中的位置,同时需要对水泡的坐标进行判断,使其保持在自身所在外框的范围内。
此时运行该程序,并保证测试工具Sensorsimulator与Android模拟器的连通,便会观察到如图1所示的效果,通过Sensorsimulator工具模拟手机的姿态的改变,屏幕中的水泡便随之向高处运动。
8程序发布
完成了所有代码的开发后,就可以将应用程序打包发布了。本案例中只需将Eclipse工具自动生成的apk文件拷出即可,按如下步骤操作。
(1)进行正式发布之前首先需要将代码中注释为测试时使用的两处代码删掉,并将注释为真机使用代码的注释去掉。
(2)完成代码的修改后重新构建项目。
(3)打开项目文件夹下的bin目录,其中名为SPY的apk文件便为本应用程序的安装包。
(4)将SPY。apk文件拷贝到支持传感器的Android手机中运行即可完成本应用程序的安装。
9结语
通过开发基于Android平台的传感器应用---水平仪程序,读者应该对Android程序的开发有了一定的了解,同时读者也应该了解到在Android平台下使用传感器来丰富自己软件的功能是十分方便的。
另外,本案例虽然只对姿态传感器进行了应用,但相信通过对本案例的学习,读者已经有能力对其他传感器进行应用,开发出更具新意的吸引人的其他应用程序。
应用开发 水平 传感器 平台 Android 嵌入式 基于 相关文章:
- iOS平台应用开发的敏捷设计流程(09-12)
- SPE61A单片机的非接触式高压验电器的应用开发(06-23)
- 采用PDIUSBD12芯片的USB应用开发(05-02)
- 基于Android的多媒体应用开发与研究(03-05)
- 嵌入式PLC芯片组的多路模拟量应用开发(12-12)
- 基于PDIUSBD12芯片的USB应用开发(08-12)