Android传感器学习总结

1、名词解析:

传感器是把现实中的某种指标以数据的形势传送给开发者

Android传感器学习总结_第1张图片


2、使用步骤:

①声明传感器管理者:

private SensorManager sensorManager;

②获取传感器系统服务:

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

③获取某一传感器,例如光照传感器:

Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);

④创建传感器监听器:

SensorEventListener listener = new SensorEventListener() {

        @Override
        public void onSensorChanged(SensorEvent arg0) {
            // 传感器数据改变时执行
        }

        @Override
        public void onAccuracyChanged(Sensor arg0, int arg1) {
            // TODO Auto-generated method stub

        }
    };

⑤注册监听器:

//注意第三个参数,设置监听的延迟时间,单位10^6分之一秒即10000001秒
sensorManager.registerListener(listener, sensor,
                SensorManager.SENSOR_DELAY_NORMAL);

3、显示光照数据的简单案例:


①、事先需要在布局文件上加一个TextView


②、代码:

public class MainActivity extends Activity {
    // 传感器管理者
    private SensorManager sensorManager;
    private TextView tv_show;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv_show = (TextView) findViewById(R.id.show_light);
        // 获取传感器系统服务
        sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
        // 获取某一传感器,例如光照传感器
        Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
        // 注册监听器
        sensorManager.registerListener(listener, sensor,
                SensorManager.SENSOR_DELAY_NORMAL);

    }

    // 创建传感器监听器
    SensorEventListener listener = new SensorEventListener() {

        @Override
        public void onSensorChanged(SensorEvent arg0) {
            // 传感器数据改变时执行
            float value = arg0.values[0];
            tv_show.setText("光照数据为:" + value);
        }

        @Override
        public void onAccuracyChanged(Sensor arg0, int arg1) {
            // TODO Auto-generated method stub

        }
    };

}

4、光照、方向、加速度简单案例参考代码:

http://download.csdn.net/detail/zhengyikuangge/9582555

你可能感兴趣的:(android)