我是靠谱客的博主 儒雅裙子,最近开发中收集的这篇文章主要介绍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[]数组传给需要使用的对象就能使用了。

总结

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

最后

以上就是儒雅裙子为你收集整理的Android传感器SensorEventListener之加速度传感器的全部内容,希望文章能够帮你解决Android传感器SensorEventListener之加速度传感器所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(121)

评论列表共有 0 条评论

立即
投稿
返回
顶部