О ссылках приложений

Функция Android App Links — это особая возможность создания глубоких ссылок в Android 6 и более поздних версиях, которая позволяет проверенным URL-адресам ваших веб-сайтов немедленно открывать соответствующий контент в вашем приложении для Android, без необходимости выбора приложения пользователем в диалоговом окне уточнения. Для этого Android использует заявления Digital Asset Links, размещенные на вашем веб-сайте, для установления безопасной и проверенной связи между вашим веб-сайтом и вашим приложением. После проверки связи Android может автоматически перенаправлять ваши глубокие ссылки на ваш веб-сайт непосредственно в ваше приложение для обработки.

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

Почему вам стоит использовать ссылки на приложения:

  • Бесперебойная работа с пользователем — Направляйте пользователей непосредственно к определенному контенту в вашем приложении из результатов поиска, веб-сайтов, мессенджеров и других приложений. Поскольку ссылки в приложении используют один URL-адрес для одного и того же контента на вашем веб-сайте и в вашем приложении, пользователи, у которых не установлено приложение, переходят на ваш веб-сайт — никаких ошибок 404, никаких проблем.
  • Повышенная безопасность — для ссылок на приложения требуется подтверждение владения доменом, что предотвращает перехват ваших ссылок другими приложениями.
  • Динамическая конфигурация (Android 15+) – Обновляйте поведение глубоких ссылок вашего приложения на лету, что обеспечивает большую гибкость и более быстрые обновления для таких вещей, как персонализированные URL-адреса, сезонные кампании или ссылки, специфичные для пользователя.
  • Вовлечение – Вы можете привлекать пользователей с помощью ссылок в результатах поиска, рекламы, веб-страниц, сообщений и многого другого.

Как поддержать App Links

  1. Создавайте прямые ссылки на определенный контент в вашем приложении : в манифесте приложения создайте фильтры намерений для URI вашего веб-сайта и настройте приложение так, чтобы оно использовало данные из намерений для отправки пользователей к нужному контенту в вашем приложении.
  2. Добавьте проверку для ваших прямых ссылок : настройте ваше приложение так, чтобы оно запрашивало проверку ссылок приложения. Затем опубликуйте JSON-файл с ссылками на цифровые активы на своих веб-сайтах для подтверждения права собственности.

В качестве альтернативы вы можете использовать помощник по созданию ссылок в Android-приложениях в Android Studio, который проведет вас через все необходимые шаги для создания и проверки ссылок в Android-приложениях. Для получения дополнительной информации см. раздел «Инструменты разработчика для создания ссылок в приложениях» .

  • Динамические ссылки на приложения – Android 15 (уровень API 35) или более поздняя версия, на устройствах с установленными сервисами Google.
  • App Links – Android 6 (уровень API 23) и более поздние версии, на устройствах с установленными сервисами Google.
  • Обычная (управляемая пользователем) глубокая ссылка — для всех версий Android, на всех устройствах.

Как работают ссылки на приложения

App Links — это особый способ создания глубоких ссылок, который дает вам полный контроль над обработкой ссылок на ваш собственный веб-сайт. Он основан на той же системе, использующей намерения пользователей, что и другие типы глубоких ссылок, но добавляет этап проверки ваших ссылок с помощью файла Digital Asset Links на вашем веб-сайте.

App Links создает безопасную и доверенную связь между вашим приложением и веб-сайтом, используя данные приложения и специальный файл assetlinks.json , который вы размещаете на своем веб-сайте или домене. Файл assetlinks.json содержит заявления Digital Asset Link для проверки связи приложения.

Вот концептуальная схема:

  1. В манифесте вашего приложения URL-адреса объявляются в фильтре намерений с android:autoVerify="true " и указывают на ваш веб-хостинг.
  2. После установки приложения система Android получает файл assetlinks.json из известного места на вашем веб-сервере.
  3. Система проверяет , что файл assetlinks.json действителен и параметры sha256_cert_fingerprints соответствуют сертификату подписи вашего приложения.
  4. Когда пользователь переходит по соответствующей ссылке , система перенаправляет его непосредственно в ваше приложение, не отображая диалоговое окно для уточнения.

Поскольку App Links используют HTTP-адреса и связь с веб-сайтом, пользователи, у которых не установлено ваше приложение, переходят непосредственно к контенту на вашем сайте. Таким образом, App Links обеспечивают надежный и бесперебойный пользовательский опыт для тех, кто переходит по прямым ссылкам на ваши веб-ресурсы.

Начиная с Android 15, App Links стали еще мощнее благодаря появлению динамических ссылок. Динамические ссылки позволяют обновлять правила создания глубоких ссылок на стороне сервера, в файле assetlinks.json , без необходимости публикации новой версии приложения. Динамические ссылки поддерживают поля Digital Asset Links для уточнения правил создания глубоких ссылок. Устройства Android с установленными сервисами Google будут периодически обновлять ваш файл и динамически применять новые правила создания глубоких ссылок. Обновление приложения не требуется.

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

  • Поддержка исключений : вы можете указать определенные пути или разделы URL-адреса, которые не должны открывать ваше приложение, даже если они соответствуют конфигурации App Link.
  • Поддержка параметров запроса : Благодаря новой функции параметров запроса вы можете определять конкретные параметры, присутствие которых в URL-адресе предотвратит открытие вашего приложения. Это открывает захватывающие возможности для динамического исключения, A/B-тестирования и постепенного включения привязки приложения для определенных сегментов пользователей.
  • Динамические обновления : Вносите изменения в конфигурацию App Links без необходимости обновления самого приложения, указывая URL-адреса, обрабатываемые вашим приложением, непосредственно в файле assetlinks.json , размещенном на вашем сервере.

Функция динамических ссылок на приложения также предоставляет вам точный контроль над URL-адресами, которые вы хотите использовать для открытия вашего приложения, включая сопоставление по путям URL, фрагментам и параметрам запроса. Вы также можете исключить любые совпадения, чтобы им было запрещено открывать ваше приложение. Для получения дополнительной информации см. раздел «Настройка динамических правил» .

Вот концептуальная схема работы динамических ссылок на приложения:

  1. В манифесте вашего приложения URL-адреса объявляются в фильтре намерений с android:autoVerify="true " и указывают на ваш веб-хостинг.
  2. После установки приложения система Android получает файл assetlinks.json из известного места на вашем веб-сервере.
  3. Система проверяет , что файл действителен и что параметры sha256_cert_fingerprints соответствуют сертификату подписи вашего приложения.
  4. Система анализирует все правила создания глубоких ссылок, определенные вами в поле dynamic_app_deep_link_components в операторе Digital Asset Links, и объединяет их с правилами, объявленными в манифесте.
    1. Когда пользователь переходит по соответствующей ссылке , система направляет его непосредственно в ваше приложение, не отображая диалоговое окно для уточнения.
  5. Система периодически повторно загружает файл assetlinks.json для получения последних правил, что позволяет обновлять ссылки без обновления приложения. Периодическая повторная загрузка поддерживается на устройствах под управлением Android 15 (уровень API 35) или более поздних версий с установленными сервисами Google.

Примеры вариантов использования

  • Сезонные маркетинговые кампании: В розничное приложение можно добавить правило для "/promo/summer-sale" в файл assetlinks.json , чтобы направлять пользователей на определенный экран распродажи. После окончания распродажи правило можно удалить без необходимости обновления приложения.
  • Пользовательские URL-адреса для партнеров: Если у вас есть партнерство с инфлюенсером, вы можете создать собственный URL-адрес, например, "/partner/influencer-name", и добавить для него правило. Затем вы можете отслеживать, обновлять или удалять этот URL-адрес динамически по мере изменения партнерских отношений.
  • A/B-тестирование URL-адресов: Разработчик может опубликовать новую функцию по определенному URL-адресу и добавить для этого правило в файл assetlinks.json . Это позволяет протестировать функцию на подгруппе пользователей, а затем изменить маршрутизацию без полного развертывания приложения.
  • Кратковременные события: приложение для продажи билетов или организации мероприятий может добавлять правила URL-адресов для конкретных событий. После завершения события эти правила можно удалить с сервера.

Совместимость с реализациями App Links.

Расширения Dynamic App Links в Android 15 разработаны для полной совместимости с существующими реализациями App Links на устройствах, работающих под управлением более ранних версий Android. Более старые версии приложений не могут использовать динамическую конфигурацию или функции конфигурации, они будут использовать правила, указанные в манифесте. Ваша ссылка на приложение по-прежнему сможет корректно открывать ваше приложение или плавно переключаться на веб-версию для пользователей более ранних версий Android. В большинстве случаев вы можете безопасно развертывать динамические правила, не влияя на пользовательский опыт для остальных пользователей.

Рекомендации по настройке правил фильтрации динамических ссылок на приложения.

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

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

Спланируйте внедрение App Links.

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

  • Планирование прямых ссылок — начните с оценки необходимых вам прямых ссылок, шаблонов URL-адресов, которые они будут использовать, способов и сроков их обновления, а также действий, на которые должен вести каждый URL-адрес в вашем приложении.
  • Поддержка динамических ссылок на приложения — обеспечьте пользователям новейших устройств Android наилучшие возможности. Воспользуйтесь преимуществами динамических ссылок на приложения для пользователей Android 15 и более поздних версий.
  • Спланируйте правила динамической фильтрации — если вы используете динамические ссылки на приложения, спланируйте, как ваши серверные правила будут взаимодействовать со статически определенными правилами в манифесте приложения. Имейте в виду, что правила фильтрации в файле assetlinks.json не могут расширять область действия фильтров манифеста приложения. Вам следует спланировать фильтры манифеста таким образом, чтобы они определяли максимально широкую область действия, а затем ваши серверные правила могли уточнять эти правила по мере необходимости. Для получения дополнительной информации см. раздел «Настройка динамических правил» .
  • Создавайте и тестируйте фильтры намерений для ваших ссылок — объявляйте ваши прямые ссылки в фильтрах намерений и тестируйте сопоставление шаблонов URL и обработку входящих намерений. Для поддержки динамических ссылок приложений обратите внимание, что вам может потребоваться перенести некоторые детализированные пути в ваш JSON-файл на стороне сервера.
  • Чтение данных из входящих интентов App Link — корректная обработка входящих интентов глубоких ссылок, перенаправляя их в соответствующую Activity. Реализация для App Links аналогична реализации для обычных глубоких ссылок, описанной в разделе «Чтение данных из входящих интентов» .
  • Настройка связей веб-сайта и динамических правил — Для поддержки App Links необходимо настроить файл на стороне сервера, размещенный на вашем веб-сайте или домене. Устройства Android будут получать этот файл для проверки реализации App Links с вашим приложением. Подробнее здесь.
  • Проверьте правильность проверки ссылок в приложении — убедитесь, что система Android успешно автоматически проверяет ваши прямые ссылки. Используйте отладку и сквозное тестирование, чтобы убедиться, что ваша конфигурация безопасна и корректно работает по всем проверенным путям ссылок в приложении.
  • Узнайте об инструментах, которые можно использовать для настройки App Links, включая Android Studio и Play Console. Подробнее здесь.