Я создаю приложение, которое использует мониторинг Geofence, я успешно реализовал эту функцию, но столкнулся с проблемой при тестировании с настройкой местоположения «Только устройство», которая сама использует GPS.
Я могу получить данные о местоположении только с помощью устройства, но когда я пытаюсь добавить геозоны для мониторинга, он всегда возвращает код состояния 1000, который является GEOFENCE_NOT_AVAILABLE.
Этот код ниже для addGeofences вызывается после того, как я подтвердил разрешения на местоположение
LocationServices.GeofencingApi.addGeofences(mApiClient, getGeofencingRequest(),
mGeofenceRequestIntent).setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(@NonNull Status status) {
if(!status.isSuccess()) {
Toast.makeText(mContext, String.format("Monitor Geofences %s", status.getStatusCode()), Toast.LENGTH_LONG).show();
}
else{
Toast.makeText(mContext, String.format("Successfully Monitor Geofences %s", status.getStatusCode()), Toast.LENGTH_LONG).show();
}
}
});
Я делаю что-то не так, или это мой единственный вариант заставить пользователя использовать режим экономии заряда батареи в режимах определения местоположения с высокой точностью?