Flutter Geolocator: приложение получает доступ к GPS даже после отмены потока местоположения на iOSIOS

Программируем под IOS
Anonymous
Flutter Geolocator: приложение получает доступ к GPS даже после отмены потока местоположения на iOS

Сообщение Anonymous »

Геолокатор (13.0.2) используется для получения обновлений местоположения на iOS. Фоновый режим также используется для получения потока координат, даже когда приложение находится в фоновом режиме. Замечено, что когда приложение переходит в фоновый режим и снова возвращается в режим переднего плана, даже после отмены потока данных о местоположении приложение все еще получает доступ к GPS. И это подтверждается значком местоположения, отображаемым в строке состояния iPhone. Однако после отмены трансляции приложение не получает координаты местоположения, а это сильно разряжает батарею.

Код: Выделить всё

StreamSubscription? _locationStream;

void startLocationStream() {
_locationStream = Geolocator.getPositionStream(
locationSettings: AppleSettings(
accuracy: LocationAccuracy.best,
allowBackgroundLocationUpdates: true,
),
).listen(coordinateLogic);
}

void stopLocationStream() {
_locationStream?.cancel().then((_) {
_locationStream = null;
});
}
Изображение


Подробнее здесь: https://stackoverflow.com/questions/793 ... -cancelled

Вернуться в «IOS»