Files
duooomi-ios-sdk/Sources/DuooomiBleSDK/Utils/BleLogger.swift
km2023 6ed3c555df feat(sdk): 日志等级 logLevel 配置化(默认 .off,对外发布完全静默)
BleLog 之前所有调用都无条件 print(Debug 包),集成方没法关。新增
public enum BleLogLevel(off/error/warn/info/debug),通过
DuooomiBleConfig.logLevel 传入,DuooomiBleSDK.init 第一行写入
BleLog.level。默认 .off 保证对外集成默认静默,排查时显式开 .debug。
保留 #if DEBUG 兜底,Release 任何 level 都不输出。

frameIntervalMs 越界 warn 从 DuooomiBleConfig.init 挪到
DuooomiBleSDK.init 内、level 设置之后,避免在 level 写入前丢日志。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 16:02:28 +08:00

44 lines
1.4 KiB
Swift
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import Foundation
/// SDK `DuooomiBleConfig.logLevel` Release
public enum BleLogLevel: Int {
case off = 0
case error
case warn
case info
case debug
}
enum BleLog {
/// `DuooomiBleSDK.init(config:)` `.off`
static var level: BleLogLevel = .off
static func d(_ message: @autoclosure () -> String, _ category: String = "General") {
#if DEBUG
guard level.rawValue >= BleLogLevel.debug.rawValue else { return }
print("[DuooomiBleSDK][\(category)] \(message())")
#endif
}
static func i(_ message: @autoclosure () -> String, _ category: String = "General") {
#if DEBUG
guard level.rawValue >= BleLogLevel.info.rawValue else { return }
print(" [DuooomiBleSDK][\(category)] \(message())")
#endif
}
static func w(_ message: @autoclosure () -> String, _ category: String = "General") {
#if DEBUG
guard level.rawValue >= BleLogLevel.warn.rawValue else { return }
print("⚠️ [DuooomiBleSDK][\(category)] \(message())")
#endif
}
static func e(_ message: @autoclosure () -> String, _ category: String = "General") {
#if DEBUG
guard level.rawValue >= BleLogLevel.error.rawValue else { return }
print("❌ [DuooomiBleSDK][\(category)] \(message())")
#endif
}
}