Universal ссылки

Указывается при создании/редактировании баннераUniversal ссылки позволяют при переходе по обычной ссылке на сайт открывать товар сразу в приложении, если оно установлено.
Обратите внимание, что открывается выбранный пользователем товар, а не категория.
Universal links работают в мессенджерах (whatsapp, telegram, facebook, vk, imessage), SMS и даже в браузере и поисковой выдаче. Например, если ваш покупатель найдет товар в Google, то при нажатии на ссылку в выдаче откроется сразу товар в приложении. Если приложении не установлено, то откроется вебсайт в обычном режиме со смарт-баннером на установку приложения
Если в ссылках используются UTM-метки, обратитесь к product менеджеру для их настройки

Установка

Передайте ссылки на товары в фиде

В товарном YML-фиде должны быть переданы корректные ссылки на товары внутри тега <url>
Ссылки не должны содержать лишних GET / query параметров (например недопустимо передавать UTM метки, идентификаторы сессий итд в фиде).

Передайте ссылки на категории в фиде

Для категории в товарном YML-фиде необходимо указать атрибут universalLink
<categories>
<category id="6323" universalLink="https://yoursite.com/category2">Смартфоны и гаджеты</category>
</categories>
Ссылки на категории так же не должны содержать лишних GET / query параметров (например недопустимо передавать UTM метки, идентификаторы сессий итд в фиде).

Передайте ссылки на баннеры в админке

Указывается при создании/редактировании баннера
Ссылки на баннеры так же не должны содержать лишних GET / query параметров (например недопустимо передавать UTM метки, идентификаторы сессий итд в фиде).

Загрузите файлы подтверждения на сайт

iOS

  • Получите у вашего менеджера в IMSHOP.IO идентификатор приложения для Universal ссылок (appID)
  • В следующем шаблоне замените appID, на полученный от менеджера IMSHOP.IO и сделайте этот файл доступным по адресу https://www.вашсайт.ru/.well-known/apple-app-site-association
  • appId формируется из team_id.bundle_name
{
"applinks": {
"apps": [],
"details": [
{
"appID": "XXXXXXXXXX(team_id).ru.yourapp.ios",
"paths": [
"*"
]
}
]
}
}

Android

  • Получите у вашего менеджера в IMSHOP.IO идентификатор android приложения для universal links (package_name) и sha256 подпись (sha256_cert_fingerprints)
  • В следующем шаблоне замените package_name и sha256_cert_fingerprints, на полученные от менеджера IMSHOP.IO и сделайте этот файл доступным по адресу https://www.вашсайт.ru/.well-known/assetlinks.json
    [{
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
    "namespace": "android_app",
    "package_name": "ru.yourapp.android",
    "sha256_cert_fingerprints":
    ["00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00"]
    }
    }]
Внимание! файлы обязательно должны быть доступны именно по следующим URL, другие URL не поддерживаются iOS / Android
iOS: https://www.вашсайт.ru/.well-known/apple-app-site-association
Android: https://www.вашсайт.ru/.well-known/assetlinks.json
Больше информации о Universal links тут
Примечательные факты и советы
  • Universal Links не работает из браузера, при переходе на требуемый URL в Safari Вам покажет плашку, сообщающую что вы можете перейти в приложение.
  • Universal Links не работает в цепочках редиректов (перенаправлений). При попадании на нужный URL сайт просто покажет вверху плашку, сообщающую о том, что вы можете перейти в приложение.
  • Universal Links можно тестировать без собственного выделенного или виртуального сервера с помощью GitHub Pages.
  • URL для перехода обязательно должен начинаться на «https://».
  • Проверять всё ли в порядке с файлом apple-app-site-association можно через App Search API Validation Tool.
  • Чтобы вызвать переход в приложение с нужного URL не обязательно иметь какое-либо наполнение по этому URL. То-есть переход будет осуществлен даже если браузер по этому URL выдаёт 404.
  • Долгое нажатие на Universal Link в приложении почты предложит Вам выбрать между открытием приложения и открытием браузера.
  • iOS проверяет файл apple-app-site-association только в момент установки и обновления системы. Поэтому если вы поменяли содержимое этого файла, приложение продолжит реагировать на ссылки согласно старым правилам, пока не будет обновлено или удалено / переустановлено.

Активация только на ограниченный список URL

Часто необходимо, чтобы приложение открывалось только при переходе по определенным URL. Например если нужно открывать приложение только при попытке открыть ссылку на товар, но не реагировать на ссылки при переходе на главную страницу сайта или на контент, отсутствующий в приложении. Инструменты Universal Links позволяют задать правила срабатывания ссылок.

Android

К сожалению, список URL на которые должно реагировать приложение в Android задается только на уровне кода в момент сборки приложения.
Чтобы установить ограничение на список адресов свяжитесь с вашим личным менеджером в IMSHOP и передайте примеры ссылок, на которые приложение должно реагировать, например https://www.some-website.com/products/*
Менеджер вас проконсультирует и предложит лучшие опции для конфигурации с учетом всех ограничений Android.

iOS

В отличие от Android, в приложениях для iPhone можно контроллировать список адресов, на которые реагирует приложение удаленно путем редактирования файла .well-known/apple-app-site-association на вашем сайте.
За управление правилами отвечает список paths, который может содержать wildcard маски.
Описание формата можно посмотреть тут: https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html
Примеры:
  • "paths": [ "*" ] - реагировать на все ссылки
  • "paths": [ "/catalog*" ] - реагировать только на ссылки начинающиеся с catalog
  • "paths": [ "NOT /news*", "*" ] - реагировать на все ссылки, кроме тех, что начинаются с news
В отличие от iOS, на платформе Android не поддерживаются исключения через NOT
iOS проверяет файл apple-app-site-association только в момент установки и обновления системы. Поэтому если вы поменяли правила в paths, поведение приложения изменится только со следующим обновлением или после переустановки. При этом для новых установок сразу будут действовать новые правила.