bluebar остается навсегда, даже если в iOS 11 вызывается stopupdating

Я получаю доступ к службам определения местоположения как "всегда", я знаю все изменения, сделанные Apple в iOS 11. Я обновил свой plist по мере необходимости (добавил новый ключ). Я звоню stopUpdatingLocation как только приложение переходит в фоновый режим, но этот синий цвет остается там, сообщая, что ваше приложение использует местоположение в фоновом режиме. Верхняя часть этого заполненного значка местоположения в строке состояния также изменяется на обозначенный значок местоположения. Я также использую Mapbox SDK. Это ошибка в iOS 11 или я что-то упустил? Просто чтобы дать справочную информацию, я полностью осведомлен о том, как работают службы определения местоположения. Я попробовал почти все решения, чтобы удалить эту синюю полосу, но, похоже, этого не происходит.

Я старался self.locationManager.allowsBackgroundLocationUpdates = false, self.locationManager = nil, self.locationManager.delegate = nil но ничто не помогает.

Будет здорово, если кто-нибудь сможет мне помочь с этим.

1 ответ

В бета-версии 5 iOS 11 был удален ненужный и навязчивый синий баннер, отображаемый для приложений, которые использовали местоположение iPhone. Отображение синей полосы для использования в фоновом режиме оставлено на усмотрение разработчика приложения через свойство.

@property(assign, nonatomic) BOOL showsBackgroundLocationIndicator

Пользователям приложений с функциями определения местоположения предлагается сначала разрешить определение местоположения во время установки приложения, а затем периодически запрашивать приложения, которые постоянно используют местоположение в фоновом режиме. Стрелка индикатора использования местоположения с тремя разными оттенками - это еще один механизм, позволяющий пользователям узнать, используется ли служба определения местоположения. Поэтому всегда нужно показывать синий баннер, и Apple это признала.

Другие вопросы по тегам