首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

传感器的容易介绍

2013-04-26 
传感器的简单介绍@Overrideprotected void onResume() {super.onResume()StatService.onResume(this)//

传感器的简单介绍
@Overrideprotected void onResume() {super.onResume();StatService.onResume(this);// 加速度传感器mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),// 还有SENSOR_DELAY_UI、SENSOR_DELAY_FASTEST、SENSOR_DELAY_GAME等,// 根据不同应用,需要的反应速率不同,具体根据实际情况设定SensorManager.SENSOR_DELAY_NORMAL);}@Overrideprotected void onPause() {// TODO Auto-generated method stubsuper.onPause();StatService.onPause(this);mSensorManager.unregisterListener(this); // 销毁传感器事件}

? ?Sensor参数下有多有多个常量,表示不同的传感器名称:

? ?加速传感器(Sensor.TYPE_ACCELEROMETER)

? ?磁场传感器(Sensor.TYPE_MAGNETIC_FLELD)

? 光线传感器 (Sensor.TYPE_LIGHT )

? 方向传感器 (TYPE_ORIENTATION)

?

?SensorManager下有多个常量,表示获得传感器的数据速度。

??SensorManager.SENSOR_DELAY_FASTEST: 以最快的速度获得传感器数据

? ?SENSOR_DELAY_GAME: 适合与在游戏中获得传感器数据

??SENSOR_DELAY_UI :适合于在ui空间中获得数据

??SENSOR_DELAY_NORMAL: 以一般的速度获得传感器数据

?

@Overridepublic void onSensorChanged(SensorEvent event) {if(PublicUtil.isWallPaperLocked(this))return; //屏幕如果锁定if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER)    {  String s = event.vaues[0]+ event.vaues[1]+event.vaues[2]}}

?event.vaues 的长度为3,不一定每一个数组的元素都有意义,每个数组元素的含义不同

?Accelerometer(加速传感器)

?values[0] :沿x轴方向加速度

?values[1]: 沿 y 轴方向的加速度

?values[2] : 沿 z 轴方向的加速度,也就是重力加速度

?

Gravity(重力感应器)

values数组中的三个元素分别代表x轴,y轴,z轴的重力大小

?

Light(光线传感器)

values数组只有第一个元素values[0]有意义,表示光线的强度,最大值是120000.0f.

?

Gyroscope( 陀螺传感器)

values,分别表示x,y,z轴的旋转的角速度

?

Orientation(方向传感器)

values[0] : 该值表示方位,也就是手机绕着z轴旋转的角度. 0表示北(north),90表示动(east),180表示南(south),270表示西(west)

?

values[1]:表示倾斜度. x 轴倾斜时,该值变化,-180<= vaules[1] <= 180

?

values[2]: 表示沿y轴的滚动角度,-90<=values[2] <=90

?

在android2.3 sdk中,并不推荐使用sensor.TYPE_ORIENTATION,values[0]值,有时会出现异常。官方推荐使用SensorManager.getOrientaion的方法来获得正确的方向?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

热点排行