我正在将使用Lumberjack Logging的Objective-C文件转换为Swift.它似乎主要是工作,除了我声明的部分ddloglevel.
Objective-C方法:
#ifdef DEBUG
static const int ddLogLevel = LOG_LEVEL_INFO;
#else
static const int ddLogLevel = LOG_LEVEL_VERBOSE;
#endif
Run Code Online (Sandbox Code Playgroud)
Swift方式:
#if DEBUG
let ddLogLevel = LOG_LEVEL_INFO;
#else
let ddLogLevel = LOG_LEVEL_VERBOSE;
#endif
Run Code Online (Sandbox Code Playgroud)
除了我这个编译时错误: Use of unresolved identifier 'LOG_LEVEL_INFO'
为什么会这样?我该如何解决?
您可以使用变通方法.您可以显式设置所有Logger的日志记录级别,而不是全局设置logLevel(仅在Objective-C中可用).例:
class LoggerFactory {
#if DEBUG
static let defaultLogLevel: DDLogLevel = DDLogLevel.All
#else
static let defaultLogLevel: DDLogLevel = DDLogLevel.Info
#endif
static func initLogging() {
DDLog.addLogger(DDTTYLogger.sharedInstance(), withLevel: defaultLogLevel)
DDLog.addLogger(DDASLLogger.sharedInstance(), withLevel: defaultLogLevel)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2395 次 |
| 最近记录: |