Широта и долгота меняются, даже если я остаюсь на том же месте - PullRequest
0 голосов
/ 02 января 2019
 @Override
public void onLocationChanged(Location location) {
    Log.d(TAG, "Firing onLocationChanged..............................................");
    mUpdatedLocation = location;
    mLastUpdateTime = DateFormat.getTimeInstance().format(new Date());
    updateUI();
}

private void updateUI() {
    Log.d(TAG, "UI update initiated .............");
    if (null != mUpdatedLocation && mUpdatedLocation.getAccuracy()>10) {
        String lat = String.valueOf(mUpdatedLocation.getLatitude());
        String lng = String.valueOf(mUpdatedLocation.getLongitude());
        tvUpdatedlocation.setText("\n Updated At Time: " + mLastUpdateTime + "\n" +
                "Latitude: " + lat + "\n" +
                "Longitude: " + lng + "\n" +
                "Accuracy: " + mUpdatedLocation.getAccuracy() + "\n" +
                "Distance: " + mUpdatedLocation.distanceTo(mLastLocation) + "m\n" +
                "Provider: " + mUpdatedLocation.getProvider());
    } else {
        Log.d(TAG, "location is null ...............");
    }
}

Я хочу сравнить два местоположения и найти расстояние между ними в метрах.

Местоположение пункта назначения (LOC A) является статическим, LOC B. движется.Но широта и долгота LOC B. меняется очень часто.

Местоположение меняется, даже когда я нахожусь в той же позиции.

Любая помощь будет оценена ...

1 Ответ

0 голосов
/ 02 января 2019

Потому что местоположение не волшебство.Он работает с беспроводными сигналами, сигналами GPS и т. Д. Они меняются, имеют шум, имеют помехи.Расчеты не точны.Обратите внимание на точность - точность метра X означает, что есть вероятность, что вы окажетесь в пределах X метров от этого места на 66%.Так что да, ваше местоположение будет постоянно меняться.Вы должны решить, сколько изменений вы хотите игнорировать, прежде чем решите, что вы действительно переехали.

Также обратите внимание, что время от времени вы получаете чтение, которое просто действительно не подходит.Например, если вы используете GPS всю ночь, вы получите несколько показаний, которые показывают вам милю.Вы также должны отфильтровать эти шипы или разобраться с тем, что они появились для телепортации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...