Обновления местоположения в Android 11

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

Разовый доступ

Рисунок 1. Диалоговое окно системы для разрешения на определение местоположения в активном режиме включает опцию « Только в этот раз» .

В Android 11 и выше, всякий раз, когда ваше приложение запрашивает доступ к местоположению в активном режиме , в диалоговом окне системных разрешений появляется опция « Только в этот раз» , как показано на рисунке 1. Эта опция предоставляет пользователям больший контроль над тем, когда приложение может получать доступ к информации о местоположении.

Узнайте больше о том, как система обрабатывает одноразовые разрешения .

Доступ к фоновому местоположению

В Android 11 изменен способ доступа функций вашего приложения к данным о местоположении в фоновом режиме . В этом разделе описано каждое из этих изменений.

Если функция вашего приложения получает доступ к местоположению в фоновом режиме, убедитесь, что такой доступ необходим. Рассмотрите возможность получения необходимой функции информации другими способами, как описано на странице о том, как получить доступ к местоположению в фоновом режиме .

Местоположение фона уточняйте отдельно.

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

Изменения в диалоговом окне разрешений

Изменить детали

Название изменения : BACKGROUND_RATIONALE_CHANGE_ID

Идентификатор изменения : 147316723

Как переключить

При тестировании совместимости вашего приложения с Android 11 вы можете включать или выключать это изменение с помощью следующих команд ADB:

adb shell am compat enable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
adb shell am compat disable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME

Для получения дополнительной информации о системе совместимости и переключении изменений см. раздел «Тестирование и отладка изменений поведения платформы в вашем приложении» .

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

Дополнительные ресурсы

Для получения более подробной информации о доступе к данным о местоположении в фоновом режиме ознакомьтесь со следующими материалами:

Видео