如何获得当前位置与下一个当前位置之间的距离

时间:2016-02-25 00:45:55

标签: java android gps geolocation android-location

我无法确定如何获得2个非固定位置之间的距离。第一个位置是我当前的位置,第二个位置是步行100米后的最新当前位置。下面是一段代码。

/**
 * Callback that fires when the location changes.
 */
@Override
public void onLocationChanged(Location location) {
    mCurrentLocation = location;
    updateUI();
}


/**
 * Updates the latitude, the longitude, and the last location time in the UI.
 */
private void updateUI() {

    latitude = mCurrentLocation.getLatitude();
    longitude = mCurrentLocation.getLongitude();

    mLatitudeTextView.setText(String.format("%s: %f", mLatitudeLabel,latitude));
    mLongitudeTextView.setText(String.format("%s: %f", mLongitudeLabel, longitude));
}

所以下面我有我的mCurrentLocation但是如何获得newCurrentLocation所以我使用distanceTo方法。

double distance = mCurrentLocation.distanceTo(newCurrentLocation);

我们非常感谢任何建议。

1 个答案:

答案 0 :(得分:1)

您必须将当前位置保存在临时变量中,如下所示:

public void onLocationChanged(Location location) {
    Location temp = mCurrentLocation;     //save the old location      
    mCurrentLocation = location;          //get the new location
    distance = mCurrentLocation.distanceTo(temp);   //find the distance     
    updateUI();
}