XuqmGroup-AndroidSDK/sdk-bugcollect/src/main/java/com/xuqm/sdk/bugcollect/CrashCapture.kt

16 行
630 B
Kotlin

package com.xuqm.sdk.bugcollect
import android.content.Context
import com.xuqm.sdk.bugcollect.internal.LogStorage
internal object CrashCapture {
fun start(appContext: Context, logApiUrl: String, appKey: String, getUserId: () -> String?) {
val prev = Thread.getDefaultUncaughtExceptionHandler()
Thread.setDefaultUncaughtExceptionHandler { thread, throwable ->
// 使用带 Context 的重载,依赖 context.filesDir 获取可靠路径
LogStorage.saveCrash(appContext, throwable, logApiUrl, appKey, getUserId())
prev?.uncaughtException(thread, throwable)
}
}
}