Работа с Link Manager для Android
Краткое содержание
Требования
Проверьте выполнение действий для начала работы с Link Manager через указанную ссылку.
Шаг 1. Настроить Манифест приложения
Создайте фильтры намерений для URI поддомена в манифесте. Если поддомен не предоставлен, обратитесь на почту analytics.support@mts.ru.
Шаг 2. Настроить передачу deeplink
Используйте метод resolve для передачи deeplink в Аналитику. В ответе получите URL редиректа и параметры, включая возможные ошибки.
Шаг 3. Дополнительно
Для анализа параметров и атрибуции переходов настройте передачу данных в МТС Аналитику через указанную ссылку.
В основе Link Manager лежит диплинкинг — направление пользователя на конкретный контент в приложении через «глубокую» ссылку (deeplink).
В статье описано, как настроить работу с Link Manager и передачу данных о переходах по таким ссылкам в МТС Аналитику.
Требования
Проверьте, что были выполнены действия для начала работы с Link Manager.
Шаг 1. Настроить Манифест приложения
Если вы не получили поддомен для указания в Манифесте, напишите на почту analytics.support@mts.ru
Заполните схему — в манифесте приложения создайте фильтры намерений для URI поддомена, зарегистрированного в Link Manager, — как это сделать. Например,
<intent-filter android:autoVerify="true">
<data android:scheme="https" />
<data android:host="url.mts.ru" />
<data android:scheme="http" />
<data android:host="url.mts.ru" />
<data android:scheme="https" />
<data android:host="*.url.mts.ru" />
<data android:scheme="http" />
<data android:host="*.url.mts.ru" />
<data android:scheme="https"/>
<data android:host="testsubdomen.url.mts.ru"/>
</intent-filter>
Шаг 2. Настроить передачу deeplink
Используйте метод resolve, чтобы передать deeplink в Аналитику. Например,
import kotlin.coroutines.suspendCoroutine
val mtsAnalytics: MtsAnalyticsApi = MTSAnalytics.getInstance(
context = this,
config = config
)
val uri: Uri = Uri.parse("https://url.mts.ru/short_link")
val result: DeepLinkResult = runBlocking {
mtsAnalytics.resolveLink(uri)
}
// или
mtsAnalytics.resolveLink(uri) { result: DeepLinkResult ->
// обработка результата
}
В ответе вы получите ссылку и её параметры. Например,
interface DeepLinkResult {
class Success(
val location: String,
val params: Map<String, Any?>
) : DeepLinkResult
class Error(val error: Throwable) : DeepLinkResult
}
location— url редиректаparams— набор параметров, полученных из Link Manager. Вложенность может быть не более 3-х уровнейDeeplinkResult.Errorсодержит: error (сообщение об ошибке)
Шаг 3. Дополнительно
Если вы хотите не просто собирать статистику по фактам перехода, а анализировать параметры переходо в и атрибуцировать переходы, настройте передачу данных в МТС Аналитику.