В iOS 11 Apple добавила более наглядное уведомление пользователя о том, когда то или иное приложение собирает информацию о местоположении в фоновом режиме. Картографические приложения или фитнес-программы могут использовать информацию о местоположении владельца iPhone и iPad, но Apple хочет убедиться, что данные отправляются с согласия пользователя. Чтобы решить эту проблему, в iOS 11 внедрили новое уведомление об использовании информации о местонахождении – если какое-то приложение в фоновом режиме отслеживает передвижение человека, в верхней части экрана появляется синяя полоса с соответствующей надписью.
В iOS 8 появилась функция для разработчиков, которая позволяла добавить больше опций для выбора отслеживания местоположения. К стандартным «Никогда» и «Всегда» в разделе «Разрешить доступ к геопозиции» добавился еще пункт «При использовании программы».
Таким образом, разработчики приложений могли объяснить пользователем, что их местоположение будет отслеживаться только тогда, когда приложение запущено. Эти настройки можно изменить в разделе Настройки -> Конфиденциальность -> Службы геолокации.
Все это работало неплохо, но не совсем так, как задумывала Apple. Инженеры компании сообщали, что 80% приложений действительно имеют доступ к местонахождению только, когда работают, но среди 20% оставшихся нашлось много программ, которым не нужно знать местоположении пользователя в принципе.
В iOS 11 Apple внесла изменение, которое повлияет как на новые, так и на старые приложения. Каждое приложение, которое запрашивает постоянное отслеживание местоположение должно предложить опцию «При использовании программы». При этом порядок разрешений во всплывающем окне должен быть следующий: «При использовании программы», «Разрешать всегда», «Не разрешать».
Если один раз запрос был отклонен, больше разработчик не вправе отправлять запрос. Изменить решение владелец iPhone или iPad сможет только через настройки.
Ранее, если какому-то приложении давался постоянный доступ к службам геолокации, в статус-баре отображалась небольшая стрелка. В iOS 11 Apple сделала проще – если программа постоянно отслеживает пользователя, вверху появляется синяя полоса с названием приложения и сообщением «Программа использует вашу геопозицию». Таким образом, пользователь сразу будет знать, что, к примеру, Google Карты постоянно следят за ним. Причем это не зависит от того, дали вы приложению постоянный доступ или только во время использования.
Синий индикатор в статус-баре нельзя не заметить, поэтому, вероятно, пользователи начнут менять настройки приватности или сообщать о странном поведении программ в Apple. В конце концов, это приведет к тому, что разработчики перестанут отслеживать местонахождение людей без видимой на то причины, либо будут четко расписывать, зачем приложению требуется знать, где вы находитесь.
Если приложению необходимо время от времени обновлять информацию о местоположении, iOS не будет показывать огромную синюю полосу, вместо этого в момент передачи информации будет появляться небольшая стрелка, как и в iOS 10.
Некоторые пользователи, уже установившие iOS 11, жалуются на постоянное уведомление в верхней части экрана. Некоторые даже попросили внедрить функцию «Не отображать синюю полосу для этого приложения, меня все устраивает». На самом же деле, раздражение со стороны обычных владельцев iPhone и iPad, как уже упоминалось выше, станет побуждающим фактором для разработчиков отключить постоянное отслеживания без необходимости и давать четкие объяснения о том, зачем программе знать местоположение человека.