Диплинкинг на Android после события пользователя

Обзор

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

  1. Процесс входа в систему
  2. Экран-заставка
  3. Consenting to usage terms

Реализация

Чтобы легко и безопасно синхронизировать пользовательское событие и поток отложенного диплинкинга, рекомендуется инициировать и запустить SDK в activity context , где выполняется пользовательское событие. Например, представление, реализующее процесс входа в систему. Это отличается от обычного потока, где SDK и инициируется и запускается в application context.
Обратные вызовы, которые используются в потоке Расширенный отложенный диплинкинг, также должны вызываться в activity context.
В обязанности разработчика входит сохранение данных отложенного и прямого диплинкинга и направление пользователя в нужное место только после выполнения события.

Пример кода

В этой ветке Github вы найдете пример кода, который ожидает псевдо-аутентификации пользователя перед продолжением перехода к назначению диплинка. После проверки подлинности пользователь направляется к месту назначения. Этот поток актуален как для отложенного диплинкинга, так и для прямого диплинкинга (когда приложение уже установлено).
Видно, что контекст приложения application context не содержит кода SDK AppsFlyer. Код AppsFlyer полностью переместился в основную активность activity, которая выполняет пользовательское событие.