zoukankan      html  css  js  c++  java
  • Android -- Sensor传感器

    Sensor创建步骤                                                                         

    • 获取系统服务(SENSOR_SERVICE)返回一个SensorManager 对象
    sensormanager = (SensorManager)getSystemSeriver(SENSOR_SERVICE);
    • 通过SensorManager对象获取相应的Sensor类型的对象
      sensorObject = sensormanager.getDefaultSensor(sensor Type);
    • 声明一个SensorEventListener 对象用于侦听Sensor 事件,并重载onSensorChanged方法
    SensorEventListener sensorListener = new SensorEventListener(){      };
    • 注册相应的SensorService
    sensormanager.registerListener(sensorListener, sensorObject, Sensor TYPE);
    • 销毁相应的SensorService
      sensormanager.unregisterListener(sensorListener, sensorObject);

    传感器类型                                                                                  

    int  TYPE_ACCELEROMETER   A constant describing an accelerometer sensor type. //三轴加速度感应器 返回三个坐标轴的加速度  单位m/s2

    int  TYPE_ALL  A constant describing all sensor types. //用于列出所有感应器

    int  TYPE_GRAVITY  A constant describing a gravity sensor type.  //重力感应器

    int  TYPE_GYROSCOPE  A constant describing a gyroscope sensor type //陀螺仪 可判断方向 返回三个坐标轴上的角度

    int  TYPE_LIGHT  A constant describing an light sensor type.  //光线感应器 单位 lux 勒克斯

    int  TYPE_LINEAR_ACCELERATION  A constant describing a linear acceleration sensor type. //线性加速度

    int TYPE_MAGNETIC_FIELD  A constant describing a magnetic field sensor type.//磁场感应 返回三个坐标轴的数值  微特斯拉

    int TYPE_ORIENTATION  This constant is deprecated. use SensorManager.getOrientation() instead. //方向感应器 已过时 可以使用方法获得

    int  TYPE_PRESSURE   A constant describing a pressure sensor type //压力感应器  单位 千帕斯卡

    int TYPE_PROXIMITY   A constant describing an proximity sensor type.//距离传感器

    int   TYPE_ROTATION_VECTOR   A constant describing a rotation vector sensor type.//翻转传感器

    int   TYPE_TEMPERATURE  A constant describing a temperature sensor type //温度传感器 单位 摄氏度

    程序代码                                                                                   

    public class MainActivity extends Activity {
    
        private SensorManager sm;
        private MyListener listener;
        private TextView tv;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            tv = (TextView) findViewById(R.id.tv);
            sm = (SensorManager) getSystemService(SENSOR_SERVICE);
            // 方向
            // Sensor sensor = sm.getDefaultSensor(Sensor.TYPE_ORIENTATION);
            // 光线
            Sensor sensor = sm.getDefaultSensor(Sensor.TYPE_LIGHT);
            listener = new MyListener();
            sm.registerListener(listener, sensor, SensorManager.SENSOR_DELAY_GAME);
        }
    
        private class MyListener implements SensorEventListener {
    
            @Override
            public void onSensorChanged(SensorEvent event) {
                float[] values = event.values;
                float angle = values[0];
                // System.out.println("与正北的角度:"+angle);
                // tv.setText("与正北的角度:"+angle);
                System.out.println("光照强度:" + angle);
                tv.setText("光照强度:" + angle);
            }
    
            @Override
            public void onAccuracyChanged(Sensor sensor, int accuracy) {
                // TODO 自动生成的方法存根
    
            }
    
        }
    
        @Override
        protected void onDestroy() {
            sm.unregisterListener(listener);
            listener = null;
            super.onDestroy();
        }
    
    }

    我是天王盖地虎的分割线                                                                

    源代码:http://pan.baidu.com/s/1dD1Qx01

    传感器.zip

    转载请注明出处:http://www.cnblogs.com/yydcdut

  • 相关阅读:
    将才和帅才之的区别
    百胜集团XX:BPM实现业务流程全过程无缝链接(案例)
    心、肝、脾、肺、肾五脏解说+ 五脏六腑的作用
    人体的五行属性
    易经卦的通例
    《孙子兵法》中的企业领导艺术和方法
    五行盘谱
    大容量高并发性服务器组的技术解析
    中华哲学的领导艺术
    如何在WINDOW环境下搭建ActivateMQ和zookeeper集群环境
  • 原文地址:https://www.cnblogs.com/yydcdut/p/3829973.html
Copyright © 2011-2022 走看看