App URL Schema, которая предполагает следующие шаги:
Выбор URL схемы для приложения
Поддержка URL схемы в приложении
Выбор URL схемы
Первым шагом для реализации диплинков App URL Schema будет выбор собственной схемы для приложения.
Окончательные диплинки будут иметь вид, схожий с привычными http/https ссылками (URI) за тем исключением, что вместо http/https схемы в ссылках
будет использоваться схема, выбранная самим приложением. Примерами таких ссылок могут быть: youla://link/to/offer (используется схема youla),
tamtam://chat/chatname (используется схема tamtam).
Несколько полезных советов при
выборе схемы:
Схема должна состоять из одного слова латинскими буквами
Старайтесь выбрать уникальную схему для вашего приложения
Используйте одинаковую схему на всех платформах
Поддержка URL схемы в приложении
Чтобы при открытии диплинка система передавала управление в ваше приложение, реализуйте в нем поддержку intent filter с выбранной схемой. Подробнее о работе механизма intent и
особенностей его реализации см. документацию платформы.
Пример реализации intent filter для приложения со схемой mybestapp:
<activity ... >
<intent-filter>
<!-- Действие VIEW используется для отображения контента пользователю -->
<action android:name="android.intent.action.VIEW" />
<data android:scheme="mybestapp" />
<!-- Категория DEFAULT необходима для получения неявных intent (implicit intent) -->
<category android:name="android.intent.category.DEFAULT" />
<!-- Категория BROWSABLE необходима для открытия ссылок из WEB страниц -->
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
Интеграция с SDK MyTracker
Завершающий этап — доработка интеграции с SDK MyTracker. Добавьте вызов метода handleDeeplink в методах onCreate и onNewIntent в каждой активности вашего приложения,
поддерживающей диплинки. Подробнее см. раздел Поддержка диплинков
Платформа iOS
Для работы диплинков на платформе iOS в MyTracker используются технологии:
URL Schemes (не поддерживается Apple с версии iOS 9.2, подробнее см. документацию iOS)
Universal Links, которая включает следующие шаги:
Выбор домена для Universal App Links и настройка AASA (Apple App Site Association)
Поддержка ассоциации доменов
Поддержка Universal Links и интеграция с SDK MyTracker
Подробнее о том, как работает технология Universal Links см. документацию iOS
Общее описание
Общий принцип работы диплинков на платформе iOS с трекинг-ссылками MyTracker следующий:
Подготовка
Для каждого приложения в MyTracker создается два домена третьего уровня с именем выбранного приложения.
Два домена требуются в силу особенностей работы механизма Universal Links
На созданных доменах MyTracker автоматически размещает AASA файл, используя информацию, переданную
пользователем (Team ID)
Разработчик приложения прописывает домены, созданные MyTracker, как ассоциированные с приложением, и вносит
необходимые доработки в приложение
Использование
Создается трекинг ссылка с необходимыми настройками диплинков
По клику на такую ссылку пользователь будет перенаправлен на домен, созданный при настройке приложения
iOS, зная что этот домен ассоциирован с приложением, предложит пользователю открыть ссылку в приложении
Если пользователь согласится, ссылка откроется в приложении и будет обработана SDK MyTracker.
В противном случае пользователь будет перенаправлен на страницу приложения в App Store.
Выбор домена для Universal App Links и настройка AASA (Apple App Site Association)
Для работы механизма Universal Links необходимо создать и настроить домен третьего уровня на серверах MyTracker:
В списке приложений выберите нужную строку, раскройте список действий
и нажмите Редактировать, чтобы перейти на страницу редактирования свойств приложения.
Интерфейс для настройки диплинков
доступен только Владельцам аккаунта
На странице приложения в разделе Настройки диплинков укажите имя
домена третьего уровня, на котором MyTracker разместит файл AASA, а также Apple Team ID вашего приложения. Apple Team ID смотрите в кабинете разработчика https://developer.apple.com/account на вкладке Membership.
Опционально, можно зарегистрировать CNAME
на своем домене, обозначив в качестве целевого домен третьего уровня, созданный в MyTracker.
Перед тем как ввести домен в поле CNAME, обратитесь в нашу службу поддержки,
сообщите зарегистрированный домен и дождитесь подтверждения, что мы добавили ваш домен в сертификат безопасности (SSL).
Поддержка ассоциации доменов
Настройте поддержку ассоциированных доменов в два этапа:
Включите поддержку ассоциированных доменов для вашего приложения в кабинете разработчика:
В списке приложений выберите приложение для настройки
Включите настройку Associated Domains
Сохраните изменения
Настройка Associated Domains после сохранения:
Включите поддержку ассоциированных доменов в вашем проекте XCode:
Перейдите на вкладку Capabilities
В разделе Associated Domains включите поддержку ассоциированных доменов
Добавьте необходимые домены, используя префикс applinks:. MyTracker создает два домена третьего уровня, так как
это необходимо для корректной работы механизма универсальных ссылок, и оба домена необходимо добавить в XCode.
Например, для приложения с выбранным доменом третьего уровня myapp:
Если вы используете CNAME к доменам MyTracker, то также добавьте его в список
Убедитесь, что entitlement файл для добавленных доменов был включен в сборку вашего проекта
Поддержка Universal Links и интеграция с SDK MyTracker
Если настройка ассоциированных доменов проведена правильно, то при клике на ссылку, содержащую ассоциированный домен,
будет запущено ваше приложение и вызван метод application:continueUserActivity:restorationHandler в AppDelegate.
Разработчику приложения необходимо реализовать поддержку этого метода, передав вызов в библиотеку MyTracker.
Затем необходимо реализовать делегат, в который MyTracker передаст значение диплинка, указанного при создании
трекинг-ссылки, либо значение оригинального диплинка, если приложение было открыто без использования трекинг-ссылок MyTracker.
#pragma mark - MRMyTrackerAttributionDelegate
- (void)didReceiveAttribution:(MRMyTrackerAttribution *)attribution
{
NSString *deeplink = attribution.deeplink;
// Processing the deep link
// ...
}
В интерфейсе MyTracker диплинк можно выбрать при создании трекинг-ссылки.
Предусмотрены две опции для настройки диплинков:
Использовать диплинк в случае установленного приложения для выбора режима работы диплинка;
Окно отложенного диплинка для выбора периода действия отложенного диплинка.
От выбранных настроек будет зависеть режим работы ссылки: обычный или отложенный диплинк, или умная ссылка.
После сохранения ссылки вы не сможете отредактировать диплинк.
Но можете создать ещё одну ссылку с новым диплинком, а старую переместить в архив.
URL диплинка можно изменить на вкладке Точки входа на странице вашего приложения.
Изменения будут действовать на новые трекинг-ссылки, но не повлияют на созданные ранее ссылки.
Обычные диплинки
Обычные диплинки подходят для рекламных кампаний,
нацеленных на существующих пользователей.
То есть для кампаний ретаргетинга,
когда большая часть аудитории уже установила ваше приложение.
Чтобы обычная трекинг-ссылка отработала как обычный диплинк:
Выберите схему диплинка и настройте SDK, как описано выше для платформ iOS и Android.
При создании трекинг-ссылки добавьте диплинк и включите опцию
Использовать диплинк в случае установленного приложения.
В результате при переходе по трекинг-ссылке
ваши пользователи будут перенаправлены на конкретный экран в приложении.
При этом для новых пользователей диплинк не сработает,
при переходе по ссылке они попадут на целевую ссылку
(исключение — умная трекинг-ссылка).
Отложенные диплинки
Отложенные диплинки подходят для рекламных кампаний,
нацеленных на привлечение новых пользователей.
Чтобы обычная трекинг-ссылка отработала как отложенный диплинк:
Выберите схему диплинка и настройте SDK,
как описано выше для платформ iOS и Android.
В результате при переходе по трекинг-ссылке все
новые пользователи будут перенаправлены в магазин приложений,
а после установки на конкретный экран в приложении.
Для существующих пользователей диплинк не сработает,
при переходе по ссылке они попадут в магазин приложений
(исключение — умная трекинг-ссылка).
Окно отложенного диплинка
Окно отложенного диплинка — это период, в течение которого работает диплинк.
То есть временной интервал, отсчитанный от клика по рекламе,
за который пользователь может быть перенаправлен на конкретный контент в приложении.
Дело в том, что, когда новый пользователь переходит по ссылке,
в которую встроен диплинк, прежде чем попасть на конкретную страницу,
он должен установить приложение.
Если с момента клика по ссылке до завершения установки и запуска приложения пройдет больше времени,
чем указано в окне,
то диплинк не сработает.
По умолчанию, Окно отложенного диплинка равно 3 часам.
Изменить настройку можно как на проект в целом, так и на отдельные трекинг-ссылки.
Подробнее см. раздел Проект,
Обычная
и Умная трекинг-ссылка.
Минимальное значение окна отложенного диплинка — 1 час, максимальное — 24 часа.
Умная трекинг-ссылка
Умная трекинг-ссылка подходит для рекламных кампаний,
нацеленных на любую аудиторию:
для новых пользователей сработает отложенный диплинк,
а для существующих пользователей — обычный.
Для использования диплинков в умной трекинг-ссылке:
Выберите схему диплинка и настройте SDK,
как описано выше для платформ iOS и Android.