检测用户是否正在移动

时间:2012-09-10 22:17:46

标签: android

我想检测用户是否正在移动 - 走路或跳跃

我找到了这个代码示例

private final SensorEventListener sensorEventListener = new SensorEventListener() {
        double calibration = SensorManager.STANDARD_GRAVITY;

        public void onAccuracyChanged(Sensor sensor, int accuracy) {
        }

        public void onSensorChanged(SensorEvent event) {
            double x = event.values[0];
            double y = event.values[1];
            double z = event.values[2];

            double a = Math.round(Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)
                    + Math.pow(z, 2)));
            currentAcceleration = Math.abs((float) (a - calibration));

它提供0.01到0.2 G之间的读数 - 我可以用这个例子来检测运动吗? 也许有点偏离主题? - 对不起,如果是的话!

1 个答案:

答案 0 :(得分:0)

您需要创建一个LOG文件并写入所有已更改的数据以生成简单的算法

  1. 你不需要像0.000000001那样检测超深的细节,只需检测2个浮点就好了

    int estimateX =(int)(x * 100);

  2. 当它在0.75到0.80之间的宽范围移动时保持记录(如果你问我们怎么知道范围,是的,你需要走路看看)

  3. 继续走