Об этом проекте
# TelemetryDeck Kotlin SDK
Kotlin-библиотека для отправки аналитических сигналов из Android-приложений в TelemetryDeck — аналитическую платформу, ориентированную на конфиденциальность. SDK работает на Android API 23+ с Kotlin 2.3.x.
## Основные возможности
Отправка сигналов — вызовите TelemetryDeck.send("eventName"), чтобы немедленно отправить аналитический сигнал, или TelemetryDeck.signal("eventName"), чтобы поставить его в очередь на последующую передачу.
Отслеживание сессий — автоматически определяет новые установки, измеряет длительность сессии и вычисляет метрики удержания (средняя длительность сессии в секундах, число различных дней использования, общее число сессий). Состояние сессии хранится локально на устройстве и очищается при удалении приложения.
Идентификация пользователя — по умолчанию генерирует анонимный идентификатор в рамках устройства. Поддерживает пользовательские идентификаторы через defaultUser (хешируется перед отправкой) или собственную реализацию TelemetryDeckIdentityProvider.
Параметры окружения — автоматически обогащает каждый сигнал метаданными устройства (модель, ОС, разрешение экрана, ориентация, архитектура, бренд, часовой пояс), метаданными приложения (версия, номер сборки) и метаданными SDK. Также фиксирует настройки доступности (масштаб шрифта, сопоставленный с категориями размера iOS, жирный текст, инверсия цвета, уменьшение движения, тёмная/светлая схема).
Сигналы навигации — отслеживайте переходы пользователя между экранами с помощью TelemetryDeck.navigate(source, destination) или вызывайте его при каждом изменении пути для автоматического отслеживания маршрута.
Отслеживание длительности — запускайте и останавливайте именованные сигналы длительности (startDurationSignal / stopAndSendDurationSignal), чтобы измерять время, затраченное на определённые события, например шаги мастера.
Помощники привлечения — удобные методы для acquiredUser(channel), leadStarted(leadId) и leadConverted(leadId).
Параметры календаря — добавляет день недели, день месяца, неделю года, квартал, час дня, флаг выходных и другое к каждому исходящему сигналу.
Отслеживание покупок — purchaseCompleted() записывает покупки в приложении с кодом страны торговой площадки и идентификатором продукта.
Режим только в памяти — вызовите inMemoryOnly(true) у builder, чтобы работать без записи на диск, что подходит для изолированных процессов. Идентификатор пользователя создаётся заново при каждом запуске; обнаружение новых установок и метрики удержания в этом режиме недоступны.
## Установка
Добавьте в build.gradle:
implementation 'com.telemetrydeck:kotlin-sdk:7.2.0'
Добавьте разрешение на интернет в AndroidManifest.xml:
разрешение android.permission.INTERNET
Настройте через метаданные манифеста или программный builder:
val builder = TelemetryDeck.Builder()
.appID("YOUR-APP-ID")
.showDebugLogs(true)
.defaultUser("anonymous-user")
TelemetryDeck.start(applicationContext, builder)
## Провайдеры и настройка
SDK использует систему плагинов-провайдеров. Встроенные провайдеры включают EnvironmentParameterProvider, PlatformContextProvider, AccessibilityProvider, SessionTrackingSignalProvider и CalendarParameterProvider. Пользовательское обогащение можно добавить через DefaultParameterProvider, DefaultPrefixProvider или реализовав TelemetryDeckIdentityProvider, TelemetryDeckSessionManagerProvider и TelemetryDeckStorage для собственных бэкендов.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.