Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用步长和距离类型的步长计数器计算速度_Java_Android - Fatal编程技术网

Java 如何使用步长和距离类型的步长计数器计算速度

Java 如何使用步长和距离类型的步长计数器计算速度,java,android,Java,Android,我需要计算速度与步骤和距离覆盖的信息! 有谁能告诉我,我怎么能用我认为是使用公式的方法做到这一点 S=VT但是在这种情况下,我需要每一步的时间来计算每一步的速度。.我已经研究了stackoverflow,但没有解决这个问题。 谢谢 在这段代码中,我通过输入计数器计算步数,通过取人高乘以0.45,然后乘以步数计算距离 传感器的公共无效登记处(){ SensorManager sManager=(SensorManager)getSystemService(Context.SENSOR\u SERV

我需要计算速度与步骤和距离覆盖的信息! 有谁能告诉我,我怎么能用我认为是使用公式的方法做到这一点
S=VT
但是在这种情况下,我需要每一步的时间来计算每一步的
速度。.我已经研究了stackoverflow,但没有解决这个问题。
谢谢

在这段代码中,我通过输入计数器计算步数,通过取人高乘以0.45,然后乘以步数计算距离

传感器的公共无效登记处(){ SensorManager sManager=(SensorManager)getSystemService(Context.SENSOR\u SERVICE)


}

您应该在第一步中使用初始戳记,在第二步中使用“现在”和初始戳记之间的差异,然后您将有时间/步骤,将初始戳记重置为“现在”,并在以下步骤中执行相同操作


你也可以简单地用一个计时器,在X秒内计算步数(距离),而不是用时间/步长,这取决于你真正需要做什么。

是的,你需要时间信息。你需要什么样的准确度?您考虑过<代码> GETTIME()<代码>吗?它应该允许毫秒分辨率,至少在返回值中;不确定你真的能读每毫秒。你有什么反对的理由?你期望步数的频率是多少?计算步数的精度非常好,我用步数乘以0.415*人高来计算距离,但我不知道如何才能按步数计算时间!!我能用步进检测器得到时间吗?你期望的步进频率是多少?如果我像你提到的那样计算时间,而我已经没有步进了!我怎么能像你说的那样通过它来计算距离呢?这没有任何意义。谢谢你的建议,我应用了这个方法,但我的时间差值在几秒钟内非常小,当我用s=vt得到速度时,我得到无穷大。。有什么想法吗
// Step Counter
sManager.registerListener(new SensorEventListener() {

                              @Override
                              public void onSensorChanged(SensorEvent event) {
                                  float steps = event.values[0];

                                  arrayList.add((int)steps);
                                  getCurrentStepValue = (int) steps ;
                                  stepValue.setText(getCurrentStepValue - arrayList.get(0) + "");

                                  double distaneCovered = step_length * (getCurrentStepValue - arrayList.get(0));

                                  distanceValue.setText("" + distaneCovered);


                              }

                              @Override
                              public void onAccuracyChanged(Sensor sensor, int accuracy) {

                              }
                          }, sManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER),
        SensorManager.SENSOR_DELAY_NORMAL);