Чтобы повышать доверие пользователей и поддерживать безопасность экосистемы, важно установить четкие правила доступа к данным о местоположении устройства. В этой статье рассказывается о требованиях к использованию в приложениях новой кнопки геолокации Android, а также о стандартном применении данных о местоположении устройства в активном режиме (ACCESS_COARSE_LOCATION или ACCESS_FINE_LOCATION). При доступе к информации в активном режиме приложение открыто и пользователь видит, что оно работает. Если приложение обрабатывает данные после того, как пользователь закрыл или свернул его, это доступ в фоновом режиме.
В некоторых случаях мы разрешаем использовать в приложении активную службу. Это отдельный API, с помощью которого приложение получает доступ к данным о местоположении, даже когда оно свернуто и его работа не видна. Однако при этом необходимо, чтобы приложение прошло проверку и были соблюдены ключевые требования, приведенные в разделе Разрешения на запуск активных служб.
Что изменится в правилах в отношении разрешений на доступ к данным о местоположении? Наиболее прозрачное решение для пользователей – это когда приложение получает доступ к данным о местоположении в активном режиме. Это укрепляет доверие, поэтому в Google Play мы советуем именно такой подход. Добавляя в приложение кнопку геолокации Android, вы обеспечиваете конфиденциальность пользователей и позволяете им контролировать передачу данных. Так приложение будет соответствовать требованию о минимально необходимом уровне доступа.
Общие сведения о минимальном уровне доступа к данным о местоположении
Для защиты конфиденциальности пользователей все приложения в Google Play должны запрашивать минимальный уровень доступа, который нужен для работы их основных функций. При определении местоположения устройства учитывайте следующие параметры:
- Точность. Если для работы функции не требуется высокая точность, используйте приблизительное местоположение (
ACCESS_COARSE_LOCATION). - Постоянство. Если доступ к геолокации нужен однократно или редко, перейдите с постоянного доступа по умолчанию на транзакционный доступ через кнопку геолокации.
Активный и фоновый режимы. В этой статье рассматривается доступ в активном режиме. Если приложению требуется доступ к геолокации, когда оно не используется, ознакомьтесь с требованиями к доступу к данным о местоположении в фоновом режиме.
Примеры случаев, когда нужно использовать данные о приблизительном местоположении устройства
- Локализованный контент и рекомендации
- Местные новости и тренды. Чтобы показывать новости из Чикаго или тренды из Сан-Франциско, не нужно знать точный почтовый адрес пользователя.
- Поиск региональных мероприятий, например фестивалей, концертов или фермерских рынков в городе или районе.
- Приблизительные метеорологические сервисы. Точность прогноза погоды обычно не зависит от того, находится пользователь дома или в в пяти минутах ходьбы от него.
- Социальные сети и сообщества
- Местные торговые площадки. В приложениях для объявлений можно указать, что товар продается в радиусе пяти километров. Это достаточная информация для покупателя, а продавец сможет раскрыть свое точное местоположение, когда сочтет нужным.
- Списки людей поблизости. В социальных приложениях лучше не показывать точное местоположение друга на карте, а просто сообщить, что он находится в том же городе.
- Инструменты и оптимизация
- Поиск адресов. Показ ближайших филиалов национальной сети розничных магазинов или банка. Точное местоположение важно, когда нужно подсказать путь, а для того, чтобы показать три ближайших магазина в радиусе 10 км, достаточно приблизительного местоположения.
- Персонализация и конфиденциальность
- Целевые промоакции, например купоны на скидку в сети продуктовых магазинов, у которой есть несколько филиалов в городе.
- Язык и культура. Автоматический выбор языка приложения или валюты на основе региона или страны пользователя.
Кнопка геолокации Android (обязательно для Android 17 и более новых версий)
В приложениях, предназначенных для Android 17 (уровень API 37) и более новых версий, для однократного получения данных о точном местоположении должна использоваться кнопка геолокации. Так приложение будет соответствовать требованию о минимально необходимом уровне доступа.
Почему необходимо использовать кнопку геолокации?
- Защита конфиденциальности. При использовании кнопки данные о точном местоположении предоставляются только на время текущего сеанса и становятся недоступны после закрытия приложения.
- Намерение пользователя. Взаимодействие становится понятным и предсказуемым: пользователи точно знают, когда и почему передаются сведения о местоположении.
- Удобство. Отпадает необходимость в сложных диалоговых окнах для запроса разрешений во время выполнения простых задач, например поиска магазина поблизости или добавления тега к фотографии.
Когда обязательно использовать кнопку геолокации?
Эту кнопку нужно использовать в приложениях, предназначенных для Android 17 и более новых версий, когда информация о точном местоположении требуется только на короткое время. Примеры:
- Поиск поблизости. Поиск магазинов, банкоматов или ресторанов рядом с пользователем.
- Однократная отправка. Отправка текущего местоположения другу в мессенджере.
- Геотеги. Добавление местоположения к пользовательскому контенту, например фотографиям или сообщениям в социальных сетях.
- Выбор адреса. Автоматическое заполнение поля с адресом доставки.
Пример реализации (манифест)
Если приложение запрашивает данные о точном местоположении только через кнопку, вы должны объявить об этом в файле AndroidManifest.xml, используя атрибут onlyForLocationButton:
XML
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:onlyForLocationButton="true" /> |
Технические сведения можно найти в документации по API.
Требования к разрешению на доступ к данным о точном местоположении в активном режиме
Приложения, которым требуется постоянный доступ к разрешению ACCESS_FINE_LOCATION и которые не обязаны использовать кнопку геолокации, должны соответствовать следующим критериям:
- Основные функции. Доступ должен быть необходим для выполнения основного назначения приложения или работы основной функции, указанной на странице приложения в Google Play.
- Особые запреты. Нельзя запрашивать доступ к данным о местоположении, если они будут использоваться только для рекламы и аналитики. Такие сведения ни в коем случае нельзя продавать.
Декларация в Play Console
Для всех приложений, запрашивающих данные о точном местоположении (ACCESS_FINE_LOCATION), необходимо заполнить декларацию в Play Console. В ней требуется обосновать необходимость доступа и объяснить, почему кнопки геолокации или сведений о приблизительном местоположении недостаточно.
В декларации нужно ответить на следующие вопросы:
1. Для каких функций приложения, доступных пользователям, требуется разрешение ACCESS_FINE_LOCATION?
В таблице ниже перечислены варианты использования, их описания и примеры. Если нужный вам вариант не связан с такими функциями или не указан в списке, выберите "Другое".
|
Вариант использования |
Описание |
Примеры |
|
Поиск рядом |
Поиск интересных мест поблизости от пользователя |
Поиск ресторанов, компаний, парковок или доступных электросамокатов рядом |
|
Однократная передача геоданных |
Передача текущего местоположения пользователя другим людям или сервисам |
Автозаполнение адреса пользователя или передача его текущих координат |
|
Отслеживание в реальном времени |
Непрерывное отслеживание и просмотр местоположения в реальном времени |
Прогресс бегуна, передача текущего местоположения другим пользователям и непрерывное отслеживание геолокации для таких функций, как измерение, пространственная съемка и сбор данных |
|
Пользовательские геотеги |
Добавление данных о местоположении к контенту, созданному пользователем |
Добавление тега с местом съемки к фотографии или местоположения к записи в социальной сети |
|
Автоматические геотеги |
Автоматическое добавление географических метаданных |
Приложение камеры, которое прикрепляет к фотографии информацию о местоположении |
|
Персонализация |
Настройка интерфейса или фида контента без запроса пользователя |
Приложение для поиска ресторанов, которое по умолчанию показывает заведения рядом с пользователем |
|
Навигация |
Пошаговая навигация по маршруту |
Построение маршрутов для автомобилей, пешеходов и велосипедистов |
|
Действия в зависимости от местоположения |
Запуск действий, когда пользователь приходит в определенное место или покидает его (геозонирование) |
Отправка напоминаний и предложений со скидками, когда пользователь входит в продуктовый магазин или проходит мимо него |
|
Устройства поблизости |
Подключение к устройствам Bluetooth или Wi-Fi поблизости в приложениях для Android 11 (уровень API 30) или более ранних версий, где Android требует доступа к данным о местоположении |
Подключение к Bluetooth-колонке или поиск телевизора Smart TV для трансляции |
|
Доступ браузера к геолокации |
Передача информации о точном местоположении сторонним сайтам или веб-приложениям по запросу пользователя, чтобы пользоваться их функциями |
Передача браузером местоположения на сайт розничного магазина, чтобы автоматически заполнить адрес доставки |
|
Диагностика сети |
Поиск, отслеживание и устранение неполадок с производительностью сигнала и сетевой инфраструктурой |
Генерация тепловых карт Wi-Fi, определение зон отсутствия сигнала мобильной связи или анализ силы сигнала и производительности вышек на территории обслуживания |
|
Другое |
2. Почему разрешения ACCESS_COARSE_LOCATION или LocationButton недостаточно и вам нужно постоянное разрешение ACCESS_FINE_LOCATION?
Хронология
- 15 апреля 2026 года. Мы объявили о новых правилах в отношении минимального уровня доступа к данным о местоположении. Согласно правилам, для предоставления минимального уровня доступа требуется нажимать кнопку геолокации Android, а все разработчики, использующие разрешение
ACCESS_FINE_LOCATION, должны заполнить декларацию. - Ноябрь 2026 года. Станет доступна декларация для приложений, использующих точное местоположение. Разработчики приложений, запрашивающих данные о точном местоположении (
ACCESS_FINE_LOCATION), должны заполнить декларацию в Play Console. В ней требуется обосновать необходимость доступа и предоставить техническое объяснение, почему кнопки геолокации или сведений о приблизительном местоположении недостаточно.- Убедитесь, что для работы основных функций вашего приложения требуется разрешение
ACCESS_FINE_LOCATION. Если оно нужно, будьте готовы объяснить, почему недостаточно инструмента выбора с минимальным уровнем доступа.
- Убедитесь, что для работы основных функций вашего приложения требуется разрешение
- 27 января 2027 года. Соблюдение правил станет обязательным для всех приложений. В Play Console можно будет самостоятельно продлить срок на 30 дней. После этой даты в отношении приложений, которые не соответствуют требованиям, будут приниматься меры.
Дальнейшие действия и рекомендации
- Проверьте код. Убедитесь, что приложение предназначено для Android 17 или более новой версии и использует сведения о точном местоположении для одноразовых задач.
- Добавьте флаг. Если в приложении должна использоваться кнопка, добавьте в манифест флаг
onlyForLocationButton. - Проверьте интерфейс. Убедитесь, что кнопка соответствует рекомендациям по дизайну для Android.