Android SDK
Краткое содержание
Проверьте перед установкой
- Требования: Android, Kotlin, minSDK = 21, targetSDK = 35, compiledSDK = 35
- Обязательное наличие ID потока (Flow ID). Если его нет, отправьте запрос на analytics.support@mts.ru с темой «Получение Flow ID».
Шаг 1. Подключение SDK
- Добавьте репозиторий mts_analytics_sdk в
settings.gradleилиbuild.gradle. - В
build.gradleмодуля добавьте зависимость:
implementation "ru.mts.analytics:android-sdk-google-v2:$mts_analytics_version"
Альтернативные версии: Google, Huawei, Google и Huawei, без Google и Huawei.
Шаг 2. Инициализация SDK
- В классе
Applicationинициализируйте SDK с указаниемflowId. - Если
flowIdне указан, возникает ошибка:IllegalArgumentException("FlowId is not initialized...").
Шаг 3. Конфигурация библиотеки
- Настройте параметры:
- Сеть:
networkTrafficEnabled(по умолчанию включено). - Отлов ошибок:
crashReportingEnabled,nativeCrashReportingEnabled,anrMonitoringEnabled. - Performance:
collectAppStartMetricsEnabled,collectUIMetricsEnabled. - Сессии:
activeTimeout,backgroundTimeout(по умолчанию 1800 сек). - Хранилище событий:
eventStorageLimit(по умолчанию 6000). - Поддержка слабых устройств:
allowFallbackMode(по умолчанию выключено).
- Сеть:
- Обновление конфигурации в рантайме возможно, но изменение
flowIdне рекомендуется.
Шаг 4. Отправка событий
- Создайте экземпляр события с обязательным полем
eventName. - Используйте метод
track(event)для отправки. - Дополнительные варианты:
track(eventName),track(eventName, key, value),track(eventName, map).
Разрешения
Добавьте разрешения:
ACCESS_NETWORK_STATEINTERNETcom.google.android.gms.permission.AD_ID
Дополнительные методы
- Отслеживание геолокации:
setLocation(latitude, longitude)илиsetLocation(location). - Установка
User ID: глобально черезsetUserIdили с событием. - Установка
User-Agent: вручную черезsetUserAgent.
Шаг 5. Просмотр данных
Статистика доступна в отчётах МТС Аналитики и через Data API.
Версия 2.7.0
Чтобы данные передавались от приложения в МТС Аналитику, настройте и установите SDK (счётчик). В этой статье пошагово описан процесс установки для разработчиков.
Проверьте перед установкой
- Android, Kotlin
- minSDK = 21
- targetSDK = 35
- compiledSDK = 35
- наличие ID потока (Flow ID)
Если вы не получили ID потока, отправьте письмо на analytics.support@mts.ru с темой «Получение Flow ID». Идентификатор нужен для отправки данных с вашего ресурса в МТС Аналитику.
Шаг 1. Подключение SDK
- Установите ссылку на артефакты библиотеки. Для настройки параметров сборки в корневой папке проекта —
settings.gradleдобавьте
pluginManagement {
repositories {
}
}
dependencyResolutionManagement {
repositories {
maven {
name "mts_analytics_sdk"
url "https://packages.a.mts.ru/repository/maven-releases/"
}
}
}
Если не получается добавить библиотеку, используйте альтернативный скрипт. Добавьте его в build.gradle проекта
aallprojects {
repositories {
maven {
name "mts_analytics_sdk"
url "https://packages.a.mts.ru/repository/maven-releases/"
}
}
}
- В файл
build.gradleмодуля, к которому подключается SDK, добавьте
implementation "ru.mts.analytics:android-sdk-google-v2:$mts_analytics_version"
Дополнительные версии библиотеки
- Huawei
- Google и Huawei
- без Google и Huawei
googleImplementation "ru.mts.analytics:android-sdk-google-v2:$mts_analytics_version"
huaweiImplementation "ru.mts.analytics:android-sdk-huawei-v2:$mts_analytics_version"
allservImplementation "ru.mts.analytics:android-sdk-allserv-v2:$mts_analytics_version"
noservImplementation "ru.mts.analytics:android-sdk-noserv-v2:$mts_analytics_version"
Можно использовать версию без Google и Huawei, если хотите сократить количество зависимостей. Мы не рекомендуем так делать, — SDK не будет собирать основные идентификаторы. Это может снизить точность и полезность аналитики.
Шаг 2. Инициализация SDK
Для инициализации и начальной конфигурации библиотеки добавьте в Application класс:
val mtsAnalytics: ru.mts.analytics.sdk2.publicapi.api.MtsAnalyticsApi =
ru.mts.analytics.sdk2.publicapi.MTSAnalytics.getInstance(
context = this,
config = MtsAnalyticsConfig.Builder(flowId = "aabb1111-2c2d-3e3f-4444-555566667777")
.setLogLevel(LogLevel.ERROR)
.setCrashReportingEnabled(true)
.build()
)
flowId — полученный идентификатор потока. Обязательное поле
Если Flow ID не заполнен, появляется ошибка
IllegalArgumentException("FlowId is not initialized...")