600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > linux 加速度传感器数据获取 Android传感器SensorEventListener之加速度传感器

linux 加速度传感器数据获取 Android传感器SensorEventListener之加速度传感器

时间:2022-12-08 21:14:53

相关推荐

linux 加速度传感器数据获取 Android传感器SensorEventListener之加速度传感器

这个类(我的是Activity中)继承SensorEventListener接口

先获取传感器对象,再获取传感器对象的类型

//获取传感器管理对象

SensorManager mSensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);

// 获取传感器的类型(TYPE_ACCELEROMETER:加速度传感器)

Sensor mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);

这里我们除了可以获取加速度传感器之外,还可以获取其他类型的传感器,如:

* Sensor.TYPE_ORIENTATION:方向传感器。

* Sensor.TYPE_GYROSCOPE:陀螺仪传感器。

* Sensor.TYPE_MAGNETIC_FIELD:磁场传感器。

* Sensor.TYPE_GRAVITY:重力传感器。

* Sensor.TYPE_LINEAR_ACCELERATION:线性加速度传感器。

* Sensor.TYPE_AMBIENT_TEMPERATURE:温度传感器。

* Sensor.TYPE_LIGHT:光传感器。

* Sensor.TYPE_PRESSURE:压力传感器。

重写注册方法

@Override

protected void onResume(){

super.onResume();

//为加速度传感器注册监听器

mSensorManager.registerListener(this, mSensor, SensorManager.SENSOR_DELAY_GAME);

}

重写onSensorChanged方法

@Override

public void onSensorChanged(SensorEvent event){

values = event.values;

StringBuilder sb = new StringBuilder();

sb.append("X方向的加速度:");

sb.append(values[0]);

sb.append("/nY方向的加速度:");

sb.append(values[1]);

sb.append("/nZ方向的加速度:");

sb.append(values[2]);

mTextValue.setText(sb.toString());//输出到Imageview上,就可看见加速度的变化

}

重写取消监听的方法

@Override

protected void onStop(){

super.onStop();

//取消监听

mSensorManager.unregisterListener(this);

}

这样就能获取加速啦。

将values[]数组传给需要使用的对象就能使用了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。