fix: BugCollect.buildDeviceInfo 和 appVersion 在 SDK 未初始化时安全降级

Co-Authored-By: Claude <noreply@anthropic.com>
这个提交包含在:
XuqmGroup 2026-06-19 02:17:26 +08:00
父节点 04eb0d13d3
当前提交 8e0193ceec

查看文件

@ -233,11 +233,25 @@ object BugCollect {
}
private fun appVersion(): String = runCatching {
if (!XuqmSDK.isInitialized()) return "unknown"
val ctx = XuqmSDK.appContext
ctx.packageManager.getPackageInfo(ctx.packageName, 0).versionName ?: "unknown"
}.getOrDefault("unknown")
private fun buildDeviceInfo(): IssueEvent.DeviceInfo {
if (!XuqmSDK.isInitialized()) {
return IssueEvent.DeviceInfo(
model = Build.MODEL,
manufacturer = Build.MANUFACTURER,
osName = "Android",
osVersion = Build.VERSION.RELEASE,
locale = java.util.Locale.getDefault().toString(),
timezone = java.util.TimeZone.getDefault().id,
isEmulator = false,
freeMemoryMb = 0,
buildType = "unknown",
)
}
val ctx = XuqmSDK.appContext
val actMgr = ctx.getSystemService(Context.ACTIVITY_SERVICE) as? ActivityManager
val memInfo = ActivityManager.MemoryInfo().also { actMgr?.getMemoryInfo(it) }