Java 如何在Android计步器应用程序上计算/估计速度
我成功地实现了一个简单的计步器应用程序,它似乎运行得很好。为了增强它,我真的需要某种机制来估计它的速度,但我不知道从哪里开始或者如何开始。 计步器使用传感器的变化阈值来检测一个台阶,我想知道从这里到哪里走。这是它的步骤计数器部分:Java 如何在Android计步器应用程序上计算/估计速度,java,android,sensors,android-sensors,sensormanager,Java,Android,Sensors,Android Sensors,Sensormanager,我成功地实现了一个简单的计步器应用程序,它似乎运行得很好。为了增强它,我真的需要某种机制来估计它的速度,但我不知道从哪里开始或者如何开始。 计步器使用传感器的变化阈值来检测一个台阶,我想知道从这里到哪里走。这是它的步骤计数器部分: private SensorEventListener sensorEventListener = new SensorEventListener() { @Override public void onSensorChanged(SensorEve
private SensorEventListener sensorEventListener = new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
float x = event.values[0];
float y = event.values[1];
float z = event.values[2];
currentY = y;
if(Math.abs(currentY-previousY) > threshould){
numSteps++;
stepsTextView.setText(String.valueOf(numSteps));
}
xTextView.setText(String.valueOf(x));
yTextView.setText(String.valueOf(y));
zTextView.setText(String.valueOf(z));
previousY = y;
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
}
};
您是否反对使用GPS获取位置更新以计算速度?使用任何类型的加速度计来测量速度都是一个艰难的过程。。。我不知道如何使用全球定位系统。有多复杂?无论如何,我想我会检查一下。一旦你实现了一个基本的GPS服务,updateLocation(Location loc)方法将允许你使用loc.getSpeed()来获取你的当前速度。