Как описано на страницах запроса разрешений на определение местоположения и рекомендаций по обеспечению конфиденциальности , приложения должны запрашивать только тот тип разрешения на определение местоположения, который имеет решающее значение для функции взаимодействия с пользователем, и должным образом сообщать об этом пользователям. В большинстве случаев использования местоположение требуется только тогда, когда пользователь взаимодействует с приложением. Если вашему приложению требуется фоновое определение местоположения, например при реализации геозон, убедитесь, что оно имеет решающее значение для основных функций приложения, предлагает явные преимущества для пользователя и выполняется очевидным для них способом.
Примечание. Магазин Google Play обновил свою политику в отношении местоположения устройства, ограничив доступ к фоновому местоположению приложениям, которым это необходимо для выполнения основных функций и которые соответствуют соответствующим требованиям политики. Использование этих рекомендаций не гарантирует, что Google Play одобрит использование вашим приложением данных о местоположении в фоновом режиме.
Узнайте больше об изменениях в политике, связанных с местоположением устройства.
Контрольный список доступа к фоновому местоположению
Используйте следующий контрольный список, чтобы определить потенциальную логику доступа к местоположению в фоновом режиме:
В манифесте вашего приложения проверьте разрешение
ACCESS_COARSE_LOCATION
и разрешениеACCESS_FINE_LOCATION
. Убедитесь, что вашему приложению требуются эти разрешения на определение местоположения.- Если ваше приложение предназначено для Android 10 (уровень API 29) или выше, также проверьте наличие разрешения
ACCESS_BACKGROUND_LOCATION
. Убедитесь, что в вашем приложении есть функция, требующая этого.
- Если ваше приложение предназначено для Android 10 (уровень API 29) или выше, также проверьте наличие разрешения
Ищите использование API-интерфейсов доступа к местоположению, таких как Fused Location Provider API , Geofencing API или LocationManager API , в вашем коде, например, в следующих конструкциях:
- Фоновые услуги
- Объекты
JobIntentService
- Задачи
WorkManager
илиJobScheduler
- Операции
AlarmManager
- Ожидающие намерения, вызываемые из виджета приложения
Если ваше приложение использует SDK или библиотеку, которая получает доступ к местоположению, этот доступ присваивается вашему приложению. Чтобы определить, нужен ли SDK или библиотеке доступ к местоположению, обратитесь к документации библиотеки.
Оцените доступ к фоновому местоположению
Если вы обнаружите, что ваше приложение получает доступ к местоположению в фоновом режиме, рассмотрите возможность выполнения следующих действий:
- Оцените, важен ли доступ к фоновому местоположению для основных функций приложения.
Если вам не нужен доступ к местоположению в фоновом режиме, удалите его.
Если ваше приложение предназначено для Android 10 (уровень API 29) или более поздней версии, удалите разрешение
ACCESS_BACKGROUND_LOCATION
из манифеста вашего приложения. Если вы удалите это разрешение, постоянный доступ к данным о местоположении не будет доступен для приложения на устройствах под управлением Android 10.Убедитесь, что пользователь знает, что ваше приложение получает доступ к местоположению в фоновом режиме. Это особенно важно для случаев, которые не очевидны для пользователей.
Если возможно, измените логику доступа к местоположению , чтобы вы запрашивали местоположение только тогда, когда активность вашего приложения видна пользователям.
Ограниченные обновления фонового местоположения.
Если для вашего приложения необходим доступ к фоновому местоположению, имейте в виду, что Android экономит заряд батареи устройства, устанавливая ограничения фонового местоположения на устройствах под управлением Android 8.0 (уровень API 26) и выше. В этих версиях Android, если ваше приложение работает в фоновом режиме, оно может получать обновления местоположения только несколько раз в час. Узнайте больше об ограничениях местоположения в фоновом режиме .
Дополнительные ресурсы
Чтобы узнать больше об использовании фонового местоположения, просмотрите следующие материалы:
Видео
Как найти возможное использование фонового местоположения
Образцы
Пример, демонстрирующий рекомендации по доступу к местоположению, когда приложение работает в фоновом режиме.
,Как описано на страницах запроса разрешений на определение местоположения и рекомендаций по обеспечению конфиденциальности , приложения должны запрашивать только тот тип разрешения на определение местоположения, который имеет решающее значение для функции взаимодействия с пользователем, и должным образом сообщать об этом пользователям. В большинстве случаев использования местоположение требуется только тогда, когда пользователь взаимодействует с приложением. Если вашему приложению требуется фоновое определение местоположения, например при реализации геозон, убедитесь, что оно имеет решающее значение для основных функций приложения, предлагает явные преимущества для пользователя и выполняется очевидным для них способом.
Примечание. Магазин Google Play обновил свою политику в отношении местоположения устройства, ограничив доступ к фоновому местоположению приложениям, которым это необходимо для выполнения основных функций и которые соответствуют соответствующим требованиям политики. Использование этих рекомендаций не гарантирует, что Google Play одобрит использование вашим приложением данных о местоположении в фоновом режиме.
Узнайте больше об изменениях в политике, связанных с местоположением устройства.
Контрольный список доступа к фоновому местоположению
Используйте следующий контрольный список, чтобы определить потенциальную логику доступа к местоположению в фоновом режиме:
В манифесте вашего приложения проверьте разрешение
ACCESS_COARSE_LOCATION
и разрешениеACCESS_FINE_LOCATION
. Убедитесь, что вашему приложению требуются эти разрешения на определение местоположения.- Если ваше приложение предназначено для Android 10 (уровень API 29) или выше, также проверьте наличие разрешения
ACCESS_BACKGROUND_LOCATION
. Убедитесь, что в вашем приложении есть функция, требующая этого.
- Если ваше приложение предназначено для Android 10 (уровень API 29) или выше, также проверьте наличие разрешения
Ищите использование API-интерфейсов доступа к местоположению, таких как Fused Location Provider API , Geofencing API или LocationManager API , в вашем коде, например, в следующих конструкциях:
- Фоновые услуги
- Объекты
JobIntentService
- Задачи
WorkManager
илиJobScheduler
- Операции
AlarmManager
- Ожидающие намерения, вызываемые из виджета приложения
Если ваше приложение использует SDK или библиотеку, которая получает доступ к местоположению, этот доступ присваивается вашему приложению. Чтобы определить, нужен ли SDK или библиотеке доступ к местоположению, обратитесь к документации библиотеки.
Оцените доступ к фоновому местоположению
Если вы обнаружите, что ваше приложение получает доступ к местоположению в фоновом режиме, рассмотрите возможность выполнения следующих действий:
- Оцените, важен ли доступ к фоновому местоположению для основных функций приложения.
Если вам не нужен доступ к местоположению в фоновом режиме, удалите его.
Если ваше приложение предназначено для Android 10 (уровень API 29) или более поздней версии, удалите разрешение
ACCESS_BACKGROUND_LOCATION
из манифеста вашего приложения. Если вы удалите это разрешение, постоянный доступ к данным о местоположении не будет доступен для приложения на устройствах под управлением Android 10.Убедитесь, что пользователь знает, что ваше приложение получает доступ к местоположению в фоновом режиме. Это особенно важно для случаев, которые не очевидны для пользователей.
Если возможно, измените логику доступа к местоположению , чтобы вы запрашивали местоположение только тогда, когда активность вашего приложения видна пользователям.
Ограниченные обновления фонового местоположения.
Если для вашего приложения необходим доступ к фоновому местоположению, имейте в виду, что Android экономит заряд батареи устройства, устанавливая ограничения фонового местоположения на устройствах под управлением Android 8.0 (уровень API 26) и выше. В этих версиях Android, если ваше приложение работает в фоновом режиме, оно может получать обновления местоположения только несколько раз в час. Узнайте больше об ограничениях местоположения в фоновом режиме .
Дополнительные ресурсы
Чтобы узнать больше об использовании фонового местоположения, просмотрите следующие материалы:
Видео
Как найти возможное использование фонового местоположения
Образцы
Пример, демонстрирующий рекомендации по доступу к местоположению, когда приложение работает в фоновом режиме.