LocationClient получает обновления местоположения по расстоянию

#android

#Android

Вопрос:

Я использую LocationClient для получения текущего местоположения пользователя, и я пытаюсь создать LocationRequest значение расстояния, а также интервал обновления.

В настоящее время мой код запрашивает обновления местоположения по интервалу обновления:

         mLocationRequest = LocationRequest.create();
        mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
        mLocationRequest.setInterval(updateInterval);
        mLocationRequest.setFastestInterval(FASTEST_INTERVAL);
        if (mLocationClient.isConnected()) {
            mLocationClient.requestLocationUpdates(mLocationRequest, this);
        }
  

В LocationManager существует способ запрашивать обновления местоположения по расстоянию

public void requestLocationUpdates (String provider, long minTime, float minDistance, LocationListener listener)

Ответ №1:

Вы можете использовать setSmallestDisplacement, чтобы установить наименьшее расстояние, пройденное между обновлениями в метрах. Просто добавьте это в свой код.

mLocationRequest.setSmallestDisplacement(НАИМЕНЬШЕЕ размещение);

Комментарии:

1. хорошо, спасибо, я пропустил этот метод. (ответ будет принят через 10 минут)

2. рад знать, что это помогло

3. @user1940676 Это действительно работает?? когда я пытаюсь его использовать, обновления местоположения произошли до smallest_displacement.

4. Нужно ли мне удалять методы setInterval () и setFastestInterval (), если я добавлю метод setSmallestDisplacement ()?