yx_tracking_point_android/Readme.md

1.9 KiB
Raw Blame History

Room 数据持久化Worker管理上传任务初次上传+重试共5次重试间隔10s线性增加多上传任务顺序处理 网络请求 Retrofit

aar位置

根目录 /aar/xxx/trackingPoint-xxx-x.x.x.aar

debug release 区别

BuildType 域名 是否打印日志
debug http://192.168.2.7:18828
release https://track.23544.com

使用

/**
 * 因为是本地引入AAR 所以需要手动导入下列必备依赖 版本可根据项目调整
 */
implementation("com.squareup.retrofit2:retrofit:3.0.0")
implementation("com.squareup.retrofit2:converter-moshi:3.0.0")
implementation("com.squareup.okhttp3:logging-interceptor:5.3.2")
implementation("com.squareup.moshi:moshi:1.15.2")
implementation("androidx.work:work-runtime-ktx:2.11.0")
implementation("androidx.room:room-runtime:2.8.4")
implementation("androidx.room:room-ktx:2.8.4")
/**
 * 初始化
 */
TrackingManager.init(
    context = this.applicationContext,
    uploadIntervalMillis = 10.seconds.inWholeMilliseconds, //收集埋点时长
    iTrackingPointUserInfo = TrackingPointUserInfoImp(),
    systemCode = "999999999", //通过管理平台获取
)

/**
 * 实现 ITrackingPointUserInfo 获取 UserInfo 的方法
 */
class TrackingPointUserInfoImp: ITrackingPointUserInfo {
    override fun uploadUserInfo(): UserInfo? { 
        return UserInfo(
            userId = 123456,
            userName = "username",
            account = "account"
        ) or null
    }
}

/**
 * 接口文档 http://192.168.2.7:18828/swagger/index.html?urls.primaryName=%E6%95%B0%E6%8D%AE%E5%9F%8B%E7%82%B9%E5%92%8Capi%E6%97%A5%E5%BF%97
 * api : api/ExternalEventlogs/AddEventListLog
 */
TrackingManager.push(
    eventType = "dianji", //通过管理平台获取
    eventParams = EventParams(
        buttonId = "${view.id}", 
        page = "Main",
        url = "" 
    )
)