XuqmGroup-AndroidSDK/sdk-log/src/main/java/com/xuqm/sdk/log/CrashCapture.kt
XuqmGroup fbafc8d802 feat: sdk-log v1.0.0 新建 + sdk-core logApiUrl 扩展 + sdk-update 进度回调
Agent 7 — sdk-core:
- SdkPlatformConfig 新增 logApiUrl、logEnabled 字段
- XuqmSDK 新增 logApiUrl/logEnabled 属性
- fetchAndApplyPlatformConfig 填充新字段

Agent 7 — sdk-log v1.0.0:
- XLog 主入口:event/captureError/warn/info/startCrashCapture
- LogQueue:SharedPreferences 存储 + 批量 OkHttp 上报
- CrashCapture:Thread.setDefaultUncaughtExceptionHandler
- Fingerprint:SHA-256 指纹去重
- FunnelTracker:漏斗分析
- Gradle Plugin:com.xuqm.log — assembleRelease 后自动上传 mapping

Agent 7 — sdk-update:
- downloadApk/downloadPlugin 新增 onProgress 进度回调
- checkAppUpdate 版本缓存(30分钟 TTL)
2026-06-16 12:10:58 +08:00

14 行
464 B
Kotlin

package com.xuqm.sdk.log
import com.xuqm.sdk.log.internal.LogStorage
internal object CrashCapture {
fun start(logApiUrl: String, appKey: String, getUserId: () -> String?) {
val prev = Thread.getDefaultUncaughtExceptionHandler()
Thread.setDefaultUncaughtExceptionHandler { thread, throwable ->
LogStorage.saveCrash(throwable, logApiUrl, appKey, getUserId())
prev?.uncaughtException(thread, throwable)
}
}
}