码迷,mamicode.com
首页 > 移动开发 > 详细

Android 获取加速传感器的值,并去除杂音

时间:2016-01-06 15:45:30      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:

 

1、注册和注销传感器

  private void registerSensor() {
        manager.registerListener(this,
                manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
                SensorManager.SENSOR_DELAY_NORMAL);
        
        
        manager.registerListener(this,
                manager.getDefaultSensor(Sensor.TYPE_GRAVITY),
                SensorManager.SENSOR_DELAY_NORMAL);

    }

    private void unregisterSensor() {
        manager.unregisterListener(this);
    }

 

2、执行注册和注销

   @Override
    protected void onResume() {
        super.onResume();

        registerSensor();
    }

    @Override
    protected void onPause() {
        super.onPause();

        unregisterSensor();
    }

 

3、实现SensorEventListener,获取加速传感器的值,并去除杂音

   @Override
    public void onSensorChanged(SensorEvent event) {
        switch (event.sensor.getType()) {
        case Sensor.TYPE_ACCELEROMETER:
            float[] values = event.values;
            gravityValues[0] = gravityValues[0] * alpha + (1 - alpha) * values[0];
            gravityValues[1] = gravityValues[1] * alpha + (1 - alpha) * values[1];
            gravityValues[2] = gravityValues[2] * alpha + (1 - alpha) * values[2];
            
            String strAccelerometer = String.format(Locale.CHINA,
                    ">>>>>>>>Accelerometer X:%f, Y:%f, Z:%f", event.values[0] - gravityValues[0],
                    event.values[1] - gravityValues[1], event.values[2] - gravityValues[2]);
            System.out.println(strAccelerometer);
            break;

        case Sensor.TYPE_GRAVITY:
            gravityValues[0] = event.values[0];
            gravityValues[1] = event.values[1];
            gravityValues[2] = event.values[2];
            break;

        default:
            break;
        }
    }

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

    }

 

Android 获取加速传感器的值,并去除杂音

标签:

原文地址:http://www.cnblogs.com/huanyou/p/5105493.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!