Злоупотребление ресурсами устройства и сети

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

Приложения, размещаемые в Google Play, должны соответствовать требованиям оптимизации для Android, зафиксированным в Основных критериях качества приложений.

Приложения, которые распространяются в Google Play, не должны изменять свой код каким-либо способом, кроме обновления через Google Play. Они также не должны скачивать исполняемый код (например, файлы в формате DEX, JAR или SO) из каких-либо источников, кроме Google Play. Это правило не распространяется на код, который запускается на виртуальной машине или интерпретаторе и имеет ограниченный доступ к API Android (например, код JavaScript в компоненте WebView или браузере).

Приложения или сторонний код (например, SDK), использующие интерпретируемые языки (JavaScript, Python, Lua и т. д.), которые загружаются во время работы (а не загружены в приложение изначально), не должны нарушать правила Google Play.

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

Примеры распространенных злоупотреблений ресурсами устройства и сети:

  • Приложения, которые прерывают показ рекламы в других приложениях.
  • Приложения, которые влияют на геймплей в играх, например позволяют жульничать.
  • Приложения, которые помогают совершить хакерские атаки на сервисы, программы и устройства или обойти защитные системы, а также предоставляют соответствующие инструкции.
  • Приложения, которые нарушают условия использования сервисов или API.
  • Приложения, которые пытаются обойти ограничения по управлению питанием (кроме разрешенных случаев).
  • Приложения, которые предоставляют услуги прокси-сервера третьим лицам (разрешено, только когда это является основной функцией приложения).
  • Приложения или сторонний код (например, SDK), которые скачивают исполняемый код, например DEX-файлы или нативный код из источника, отличного от Google Play.
  • Приложения, которые устанавливают на устройство другие приложения, не получив заранее согласие пользователя.
  • Приложения, которые содержат ссылки на вредоносное ПО или способствуют его распространению или установке.
  • Приложения или сторонний код (например, SDK), которые содержат компонент WebView с интерфейсом JavaScript и загружают ненадежный веб-контент (например, URL с протоколом HTTP) или непроверенные URL, полученные из ненадежных источников, например из ненадежных намерений.
  • Приложения, которые используют разрешение на запуск уведомлений в полноэкранном режиме, чтобы заставлять пользователя взаимодействовать с объявлениями или уведомлениями, прерывающими работу приложения.

 

Использование активных служб

Разрешение на запуск активных служб обеспечивает надлежащее использование таких служб. Если приложение предназначено для Android 14 или более поздней версии, вы должны указать допустимые типы для всех используемых в нем активных служб. Для каждого типа также потребуется объявить подходящее разрешение на запуск активной службы. Например, если в приложении используется определение местоположения на карте, в манифесте нужно указать разрешение FOREGROUND_SERVICE_LOCATION.

Объявлять в приложении разрешение на запуск активных служб можно только в следующих случаях:

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

Критерии выше не распространяются на следующие типы активных служб:

Подробнее об использовании активных служб

 

Передача данных, инициированная пользователем

API для передачи данных, инициированной пользователем, может запускаться в приложениях, только если:

  • задача инициируется пользователем;
  • данные передаются по сети;
  • задача выполняется не дольше, чем требуется для передачи данных.

Подробнее об API для передачи данных, инициированной пользователем

 

Требования к использованию параметра FLAG_SECURE

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

По соображениям безопасности и конфиденциальности все приложения, которые распространяются через Google Play, должны учитывать наличие FLAG_SECURE в других приложениях. Это значит, что запрещается создавать способы обхода параметра FLAG_SECURE в других приложениях или способствовать их использованию.

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

 

Приложения с локальными контейнерами Android

Приложения с локальными контейнерами Android позволяют создавать среду, которая частично или полностью имитирует ОС Android. Такая среда может содержать не все функции безопасности Android, поэтому разработчики могут добавить в файл манифеста параметр, сообщающий локальным контейнерам Android, что приложение не должно запускаться в имитируемой ими среде.

Параметр в манифесте, обеспечивающий безопасность среды

Параметр REQUIRE_SECURE_ENV в манифесте позволяет указать, что это приложение нельзя запускать в локальном контейнере Android. По соображениям безопасности и конфиденциальности приложения, предоставляющие локальные контейнеры Android, должны учитывать наличие этого параметра в других приложениях, а также:
  • Проверять манифесты приложений, загружаемых в локальный контейнер Android, на наличие этого параметра.
  • Не загружать в локальный контейнер Android приложения, в манифестах которых объявлен этот параметр.
  • Не выступать в качестве прокси-сервера, перехватывая или вызывая API на устройстве, чтобы они казались установленными в контейнере.
  • Не создавать и не помогать использовать методы обхода этого параметра (например, загружая более раннюю версию приложения, чтобы обойти действующий параметр REQUIRE_SECURE_ENV).
Узнать больше об этих правилах можно в нашем Справочном центре.

Эта информация оказалась полезной?

Как можно улучшить эту статью?
Поиск
Очистить поле поиска
Закрыть поиск
Главное меню
11564958036712845433
true
Поиск по Справочному центру
true
true
true
true
true
92637
false
false