Услуги определения местоположения: «Синий бар» в режиме «Всегда» - PullRequest
0 голосов
/ 05 декабря 2018

Насколько я посмотрел / искал и реализовал пока.Синий далеко не должен появляться, когда пользователь предоставил «Всегда» использовать службы определения местоположения.Но один из моих клиентов получает синюю полосу на своем телефоне iOS 12.Это также случилось с ним с приложением Google Maps, но я не смог воспроизвести его на своем устройстве.

Синяя полоса сообщения гласит: «Google Maps активно использует ваше местоположение»

Возможно,есть ли какая-либо другая причина, по которой появляется синяя полоса?


POP UP ALERT:

На основании данного ответа мистера Таука и Роу это приводитМеня интересует, будет ли синяя полоска отображаться при установке showsBackgroundLocationIndicator на true, тогда всплывающее предупреждение будет также показано пользователю?Говоря: «ABC приложение получает доступ к вашему местоположению в фоновом режиме».Как указано ниже, как упомянуто здесь: О службах конфиденциальности и определения местоположения в iOS 8 и более поздних версиях

background location use alert

Ответы [ 2 ]

0 голосов
/ 13 декабря 2018

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

open var showsBackgroundLocationIndicator: Bool

От Apple:

Это свойство влияет только на приложения, которые были получены всегдаавторизации.Когда такое приложение перемещается в фоновый режим, система использует это свойство, чтобы определить, следует ли изменить внешний вид строки состояния, чтобы указать, что используются службы определения местоположения.Отображение измененной строки состояния дает пользователю быстрый способ вернуться в ваше приложение.Значение этого свойства по умолчанию: NO.

Для приложений с авторизацией при использовании система всегда меняет внешний вид строки состояния, когда приложение использует службы определения местоположения в фоновом режиме.

0 голосов
/ 11 декабря 2018

Я бы удостоверился, что пользователь действительно дал приложению «Всегда авторизация», и что вы не установили флаг показываетBackgroundLocationIndicator.

См. Документацию Apple относительно этого:

Начиная с iOS 11, приложения имеют больший контроль над отображением строки состояния служб местоположения (синяя полоса) для своих приложений.

Приложения, которым предоставляется авторизация при использованиипользователи (независимо от запрашиваемой авторизации) автоматически отобразят синюю полосу.Приложения не могут отказаться от синей полосы, если они получают только авторизацию пользователей во время использования.

Приложения, которым дана авторизация всегда, с другой стороны, будут отображать синюю полосу на основеновое свойство объекта CLLocationManager.

@ property (assign, nonatomic) BOOL showsBackgroundLocationIndicator;

Приложения, в которых активен сеанс Continuous Background Location и получено разрешение Always, будет показана синяя полосатолько в том случае, если для свойства showsBackgroundLocationIndicator установлено значение YES.

Приложение может переключать свойство showBackgroundLocationIndicator, чтобы в любой момент изменить видимость синей полосы.

По этим ссылкам:

  1. https://developer.apple.com/library/archive/qa/qa1965/_index.html
  2. https://developer.apple.com/documentation/corelocation/cllocationmanager/2923541-showsbackgroundlocationindicator

РЕДАКТИРОВАТЬ : По поводу нового вопроса - POP UP ALERT:

YourПриложение должно запрашивать у пользователя разрешение на использование услуг определения местоположения request permission

Для постоянного использования во время использования приложения.Если пользователь согласился всегда разрешать, iOS может напомнить ему, что приложение может использовать его местоположение.

см. Эту часть

Другие приложения будут запрашивать доступ к вашему местоположениюдаже когда приложение не используется.Когда вы разрешите приложению всегда использовать ваше местоположение, iOS напомнит вам, какие приложения могут использовать ваше местоположение после того, как приложение использует ваше местоположение в фоновом режиме.

при https://support.apple.com/en-il/HT203033

Обычно это происходит один раз, см. Ответ Apple на вопрос на своих форумах:

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

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

А эта ветка Удаление фоновых оповещений о местоположении в iOS?

...