Как работает этот сервис
В ваше приложение можно внедрить следующие функции:
Автоматическая защита будет проверять код во время его выполнения при запуске приложения. Если установщик не пройдет проверку, пользователю будет предложено скачать приложение из Google Play.
Преимущества. Больше пользователей смогут получать официальные обновления приложения в Google Play.
Примечание. Эта функция доступна только некоторым партнерам Google Play.
Автоматическая защита проверяет код во время его выполнения, ограничивая возможности для изменений. Благодаря передовым методам обфускации и техникам защиты от обратного проектирования удалить такую систему контроля становится сложнее. Если проверка не будет пройдена, пользователю будет предложено скачать ваше приложение в Google Play, иначе оно не запустится.
Преимущества. Защита от вмешательства и проверка установщика блокируют несанкционированные изменения, перепаковку и распространение приложения, а также не допускают пиратства. Поэтому злоумышленники не смогут обойти ваши настройки распространения и монетизации.
Примечание. Мы не гарантируем, что защита от вмешательства будет действенна против всех изменений и способов распространения. Однако она усложняет выполнение этих действий, в том числе увеличивая затраты на них, а значит, снижает вероятность успеха мошенников. Мы постоянно усиливаем защиту от вмешательства. Новые выпуски вашего приложения по умолчанию получат ее последнюю версию.
Если вы будете делиться с Google Play телеметрическими данными из приложения, например анонимизированными данными о среде и производительности, это поможет нам повышать отказоустойчивость и эффективность защиты от вмешательств. Отказаться от передачи телеметрических данных можно, отключив в настройках параметр "Делиться с Google телеметрией из приложения". Чтобы найти его, откройте Тестирование и публикация > Целостность приложения и прокрутите экран вниз до раздела Автоматическая защита. Подробнее о том, как Google использует данные для разработки своих сервисов…
Как настроить сервис
Ниже описано, как добавить автоматическую защиту в приложение.
Чтобы внедрить автоматическую защиту, Google Play потребуется создавать модифицированные APK-файлы, подписанные вашим ключом приложения. Для этого нужно:
- Использовать функцию подписания приложений в Google Play.
- Опубликовать приложение в формате набора Android App Bundle.
Обратите также внимание на эти особенности:
- Целевой уровень API в приложении должен быть не ниже 21.
- Автоматическая защита работает в офлайн-режиме. Однако для проверок установщика будет время от времени требоваться передача данных, если приложение Google Play на устройстве долго работало без подключения к интернету.
- Автоматическая защита заменяет необходимость использовать библиотеку Play Licensing.
- На приложения, которые вы загружаете на страницу внутреннего доступа в Play Console, защита не распространяется. Отправляйте ссылки для внутреннего доступа к приложениям только надежным участникам команды и не выкладывайте незащищенные версии в общий доступ.
- Автоматическая защита несовместима с механизмом прозрачности кода наборов App Bundle.
Дополнительные условия для работы с защитой от вмешательства
Примечание. Эта функция доступна только некоторым партнерам Google Play.
Требования к приложению:
- Целевой уровень API должен быть не ниже 23. Целевая версия 23 или выше для атрибута minSdkVersion охватывает более 99 % активных устройств Android.
- Необходимо добавить один из следующих целевых интерфейсов ABI: x86, x86_64, armeabi-v7a или arm64-v8a. Изменить целевые ABI для приложения можно в настройках Gradle. Если вы удалите другие ABI, которые не используются на активных устройствах Android, это не повлияет на доступность вашего приложения.
Создайте выпуск, следуя инструкциям из шага 1 в статье о подготовке и внедрении выпуска.
Включить защиту можно во время создания выпуска (для этого следуйте инструкциям из шага 2 в статье Как подготовить и внедрить выпуск) или на странице Целостность приложения (Тестирование и выпуск > Целостность приложения), где собраны сервисы для подписания и обеспечения целостности, которые помогают защищать приложения и игры от нежелательных изменений.
При подготовке выпуска вы увидите кнопку Включить защиту целостности или Управление защитой целостности. Если вы нажмете Да в разделе "Автоматическая защита", то Google Play будет подписывать выпуски и добавлять защиту целостности, чтобы ограничить несанкционированное изменение и распространение. Это будет значить, что автоматическая защита включена.
Завершите подготовку выпуска и сохраните изменения.
Во время тестирований приложения используйте версии с защитой, чтобы убедиться, что она не влияет на удобство использования и производительность.
При этом обращайте особое внимание на следующие аспекты:
- Запуск приложения. Убедитесь, что приложение запускается быстро и без сбоев.
Если во время тестирования вы обнаружите проблемы, то можете отключить автоматическую защиту. Однако мы не рекомендуем поступать так в случае открытых тестирований и с рабочими версиями.
Чтобы отключить защиту целостности для отдельного выпуска, сделайте следующее:
- Во время подготовки выпуска нажмите Управление защитой целостности.
- В разделе "Автоматическая защита" выберите Предыдущая версия защиты или Отключить защиту для этого выпуска.
- Сохраните изменения. Они будут применены только к этому выпуску. Для следующего загруженного выпуска снова будет включена самая новая и надежная версия защиты.
Когда все будет готово, опубликуйте рабочую версию приложения через Play Console. Она будет защищена и доступна всем пользователям Google Play из выбранных стран.
Как настроить страницу приложения в Google Play для тех, кто переходит к нему из окна автоматической защиты
Когда автоматическая защита включена, пользователям, установившим приложение из неофициальных источников, может быть предложено скачать его из Google Play. Согласившись, они перейдут на страницу приложения в Google Play, где смогут установить, купить или обновить его. Затем оно будет добавлено в библиотеку Google Play.
Также можно настроить эту страницу для тех, кто нажав на предложение, переходит к вашему приложению в Google Play. Например, добавить название, описание, значок и графические объекты. Вот как это сделать:
- Откройте Play Console и перейдите на страницу Целостность приложения (Тестирование и выпуск > Целостность приложения).
- Прокрутите до раздела "Автоматическая защита".
- Нажмите Настройки.
- Прокрутите экран до раздела "Специальные страницы приложения в Google Play".
- Выберите Создать страницу приложения.
- Выполните инструкции на странице Создание специальной страницы приложения в Google Play и нажмите Сохранить.
Эту страницу можно также настроить в разделе Специальные страницы приложения в Google Play:
- В Play Console откройте Специальные страницы приложения в Google Play (Привлечение пользователей > Специальные страницы приложения в Google Play).
- Выберите Создать страницу приложения. Укажите, хотите вы создать новую страницу или скопировать существующую, и нажмите Далее.
- Прокрутите раздел "Информация о странице приложения" до пункта Целевая аудитория.
- Выберите По URL и введите "playintegrity" в текстовое поле.
- Укажите остальные данные и нажмите Сохранить.
Совет. Не меняйте параметр URL (playintegrity) и вводите его без ошибок. Это ключевое слово, зарезервированное для ссылок на контент, которые относятся к системе защиты целостности.
Как эффективно использовать защиту от вмешательства
Примечание. Эта функция доступна только некоторым партнерам Google Play.
Следуйте нашим рекомендациям, чтобы защита от вмешательства работала эффективнее.
Поскольку автоматическая защита может быть несовместима с другими решениями, их одновременное использование, скорее всего, приведет к ошибкам. Если во время работы приложения проводятся другие проверки, перед открытым тестированием убедитесь, что защищенная версия работает корректно.
Если опубликовать незащищенную версию в рамках открытого тестирования или за пределами Google Play, на нее не будет распространяться защита приложения. Чтобы этого не случилось, публикуйте только защищенные общедоступные версии.
Google Play будет автоматически создавать защищенные сборки для рабочей и всех типов тестовых версий. Тестируйте эти версии так же тщательно, как обычно. В частности, нужно проверять следующее:
- Запуск приложения. Убедитесь, что приложение запускается быстро и без сбоев.
- Обратные вызовы из нативного кода (C или C++) к коду Java (в вашем собственном коде или сторонних библиотеках). Например, при взаимодействии с объявлениями, добавлении записей в журнал, аутентификации, интеграции с социальными сетями, а также во время работы некоторых связанных с Android функций, таких как обработка разрешений.
Если во время тестирования вы обнаружите проблемы, то можете отключить защиту целостности или вернуться к ее предыдущей версии, которую вы уже использовали в более раннем выпуске. Однако мы не рекомендуем поступать так в случае открытых тестирований и с рабочими версиями.
Защита не добавляется в сборки, которые вы напрямую загружаете на страницу внутреннего доступа. Это нужно для того, чтобы вы могли загружать туда отладочные и другие подобные сборки.
Неудачные попытки обойти автоматическую защиту целостности могут привести к увеличению количества сбоев. Это означает, что защита выполняет свою функцию. Если злоумышленники попытаются внести изменения в ваше приложение, проверка во время выполнения остановит его работу. Обычно это приводит к сбоям.
Сбои, которые не относятся к Google Play, не влияют на показатели стабильности Android Vitals. Если вы анализируете сбои с помощью других инструментов, например Crashlytics, и хотите отфильтровать результаты по источнику установки, то для Google Play используйте название пакета com.android.vending.
Если вас беспокоит увеличение числа сбоев, предоставьте нам подробную информацию о них. Наши специалисты рассмотрят обращение и свяжутся с вами, если выяснится, что причина связана с автоматической защитой целостности.
Взломанная версия – это версия приложения, работающая после того, как ее изменили, или установленная из стороннего источника (если ваше приложение требует установки из Google Play).
Если вы обнаружили взломанную версию своего приложения, сообщите нам.
Статьи по теме
- Узнайте больше о сервисах подписания и обеспечения целостности в Play Console.
- Прочитайте информацию о сервисах подписания и обеспечения целостности на сайте Android для разработчиков.