Настройки диплинков

MyTracker поддерживает обычные и отложенные диплинки различных типов: URL Schemes и Universal Links, App URL Schemas и App Links.

В целом для работы диплинков необходимо:

  1. Реализовать диплинки в своём приложении (подробнее см. ниже документацию на платформы Android и iOS).
  2. Настроить SDK на поддержку диплинков (для iOS, Android и Unity).
  3. Опубликовать приложение.
  4. Проверить настройки в интерфейсе MyTracker (см. ниже).

Для работы диплинков на платформе Android, в MyTracker используются технологии:

  • Android App Links, подробнее см. документацию Android
  • 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 в 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 в настройках диплинков, чтобы именно он использовался в ссылках.

Apple Team ID в кабинете разработчика:

Поддержка ассоциации доменов

Настройте поддержку ассоциированных доменов в два этапа:

  • Первым делом включите поддержку ассоциированных доменов для вашего приложения в кабинете разработчика:
    • Авторизируйтесь в кабинете разработчика https://developer.apple.com/account
    • Перейдите на страницу Identifiers → App IDs
    • В списке приложений выберите приложение для настройки
    • Включите настройку Associated Domains
    • Сохраните изменения

    Настройка Associated Domains после сохранения:

  • Включите поддержку ассоциированных доменов в вашем проекте XCode:
    • Перейдите на вкладку Capabilities
    • В разделе Associated Domains включите поддержку ассоциированных доменов
    • Добавьте необходимые домены, используя префикс applinks:. MyTracker создает два домена третьего уровня, так как это необходимо для корректной работы механизма универсальных ссылок, и оба домена необходимо добавить в XCode. Например, для приложения с выбранным доменом третьего уровня myapp:
      • applinks:[ВЫБРАННЫЙ ДОМЕН].mytrk.link, например: applinks:myapp.mytrk.link
      • applinks:[ВЫБРАННЫЙ ДОМЕН]-alternate.mytrk.link, например: applinks:myapp-alternate.mytrk.link
    • Если вы используете CNAME к доменам MyTracker, то также добавьте его в список
    • Убедитесь, что entitlement файл для добавленных доменов был включен в сборку вашего проекта

Поддержка Universal Links и интеграция с SDK MyTracker

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

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray * __nullable restorableObjects))restorationHandler
{
    return [MRMyTracker continueUserActivity:userActivity restorationHandler:restorationHandler];
}

Затем необходимо реализовать делегат, в который MyTracker передаст значение диплинка, указанного при создании трекинг-ссылки, либо значение оригинального диплинка, если приложение было открыто без использования трекинг-ссылок MyTracker.

#pragma mark - MRMyTrackerAttributionDelegate
- (void)didReceiveAttribution:(MRMyTrackerAttribution *)attribution
{
    NSString *deeplink = attribution.deeplink;

    // Processing the deep link
    // ...
}

Подробнее см. раздел Поддержка диплинков


Настройки в MyTracker

В интерфейсе MyTracker предусмотрены две опции для настройки диплинков:

  • Использовать диплинк в случае установленного приложения для выбора режима работы диплинка;
  • Окно отложенного диплинка для выбора периода действия отложенного диплинка.

Все настройки вы можете задать уже при создании трекинг-ссылки, таким образом сразу обозначив режим работы ссылки: обычный или отложенный диплинк, или умная ссылка.

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

Чтобы обычная трекинг-ссылка отработала как обычный диплинк:

  1. Выберите схему диплинка и настройте SDK, как описано выше для платформ iOS и Android.
  2. Опубликуйте приложение.
  3. При создании трекинг-ссылки добавьте диплинк и включите опцию Использовать диплинк в случае установленного приложения.

В результате при переходе по трекинг-ссылке ваши пользователи будут перенаправлены на конкретный экран в приложении. При этом для новых пользователей диплинк не сработает, при переходе по ссылке они попадут на целевой URL (исключение — умная трекинг-ссылка).

Отложенные диплинки подходят для рекламных кампаний, нацеленных на привлечение новых пользователей.

Чтобы обычная трекинг-ссылка отработала как отложенный диплинк:

  1. Выберите схему диплинка и настройте SDK, как описано выше для платформ iOS и Android.
  2. Опубликуйте приложение.
  3. При создании трекинг-ссылки добавьте диплинк и оставьте выключенной опцию Использовать диплинк в случае установленного приложения.
  4. При необходимости отрегулируйте окно отложенного диплинка по кнопке Дополнительные настройки.

В результате при переходе по трекинг-ссылке все новые пользователи будут перенаправлены в магазин приложений, а после установки на конкретный экран в приложении. Для существующих пользователей диплинк не сработает, при переходе по ссылке они попадут в магазин приложений (исключение — умная трекинг-ссылка).

Окно отложенного диплинка — это период, в течение которого работает диплинк. То есть временной интервал, отсчитанный от клика по рекламе, за который пользователь может быть перенаправлен на конкретный контент в приложении.

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

По умолчанию, Окно отложенного диплинка равно 3 часам. Изменить настройку можно как на проект в целом, так и на отдельные трекинг-ссылки. Подробнее см. раздел Проект, Обычная и Умная трекинг-ссылка.

Умная трекинг-ссылка подходит для рекламных кампаний, нацеленных на любую аудиторию: для новых пользователей сработает отложенный диплинк, а для существующих пользователей — обычный.

Для использования диплинков в умной трекинг-ссылке:

  1. Выберите схему диплинка и настройте SDK, как описано выше для платформ iOS и Android.
  2. Опубликуйте приложение.
  3. При создании умной трекинг-ссылки добавьте диплинк и включите опцию Использовать диплинк в случае установленного приложения.
  4. При необходимости отрегулируйте окно отложенного диплинка по кнопке Дополнительные настройки.

В результате при переходе по умной трекинг-ссылке:

  • новые пользователи попадут в магазин приложений, а после установки — на конкретный экран в приложении;
  • существующие пользователи попадут сразу на конкретный экран в приложении.

Подробнее от работе умной ссылки с диплинком см. раздел Диплинки