このプロジェクトについて
# TelemetryDeck Kotlin SDK
[TelemetryDeck](https://telemetrydeck.com)에 Android 애플리케이션으로부터 분석 신호를 전송하기 위한 Kotlin 라이브러리입니다. 프라이버시 우선 분석 플랫폼으로, SDK는 Android API 23+ 및 Kotlin 2.3.x에서 동작합니다.
## 핵심 기능
**신호 전송** — 즉시 분석 신호를 발생시키려면 `TelemetryDeck.send("eventName")`을 호출하거나, 나중에 전송할 수 있도록 예약하려면 `TelemetryDeck.signal("eventName")`을 사용합니다.
**세션 추적** — 새로운 설치, 세션 지속 시간 측정, 유지 지표(평균 세션 초수, 사용한 고유 일수, 총 세션 횟수)를 자동으로 감지합니다. 세션 상태는 기기에 로컬로 저장되며 제거 시 지워집니다.
**사용자 식별** — 기본적으로 기기 범위의 익명 식별자를 생성합니다. `defaultUser`(전송 전에 해시됨) 또는 사용자 정의 `TelemetryDeckIdentityProvider` 구현을 통해 사용자 지정 사용자 식별자를 지원합니다.
**환경 파라미터** — 기기 메타데이터(모델, OS, 화면 해상도, 방향, 아키텍처, 브랜드, 시간대), 앱 메타데이터(버전, 빌드 번호), SDK 메타데이터로 모든 신호를 자동으로 부가합니다. 접근성 설정도 캡처합니다(폰트 규모는 iOS 크기 범주로 매핑, 굵은 텍스트, 색상 반전, 모션 축소, 다크/라이트 스킴).
**네비게이션 신호** — `TelemetryDeck.navigate(source, destination)`을 사용하여 화면 간 사용자 흐름을 추적하거나 경로 변경 시마다 호출하여 자동 라우트 추적을 수행합니다.
**지속 시간 추적** — 명명된 지속 시간 신호 시작 및 정지를(`startDurationSignal` / `stopAndSendDurationSignal`) 통해 마법사 단계 같은 특정 이벤트에 소요된 시간을 측정합니다.
**획득 도우미** — `acquiredUser(channel)`, `leadStarted(leadId)`, `leadConverted(leadId)`용 편의 메서드입니다.
**캘린더 파라미터** — 주 단위 요일, 월 단위 일자, 연중 주차, 분기, 시간대, 주말 플래그 등을 모든 전송 신호에 추가합니다.
**구매 추적** — `purchaseCompleted()`는 마켓플레이스 국가 코드와 제품 ID로 인앱 구매를 기록합니다.
**메모리 전용 모드** — 빌더에서 `inMemoryOnly(true)`를 호출하여 디스크 쓰기 없이 실행합니다. 샌드박스화된 프로세스에 적합하며, 매 실행 시 사용자 식별자가 재생성됩니다. 이 모드에서는 신규 설치 감지 및 유지 지표 사용이 불가능합니다.
## 설치
`build.gradle`에 추가:
```groovy
implementation 'com.telemetrydeck:kotlin-sdk:7.2.0'
```
`AndroidManifest.xml`에 인터넷 권한 추가:
```xml
<uses-permission android:name="android.permission.INTERNET" />
```
매니페스트 메타데이터 또는 프로그래매틱 빌더를 통해 구성:
```kotlin
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.