Swift 操作系统日志调试&;发布版本
我正在对OS_日志使用以下帮助器方法,但我不确定是否有必要 我想在调试版本中记录事情,但不一定要在发布版本中记录 我不清楚编译器是否会删除发布版本中的os_日志语句Swift 操作系统日志调试&;发布版本,swift,logging,oslog,Swift,Logging,Oslog,我正在对OS_日志使用以下帮助器方法,但我不确定是否有必要 我想在调试版本中记录事情,但不一定要在发布版本中记录 我不清楚编译器是否会删除发布版本中的os_日志语句 public func DLog(_ string: String, subsystem: OSLog, type: OSLogType) { #if DEBUG os_log("%{PUBLIC}@", log: subsystem, type: type, string) #endif } 我是
public func DLog(_ string: String, subsystem: OSLog, type: OSLogType) {
#if DEBUG
os_log("%{PUBLIC}@", log: subsystem, type: type, string)
#endif
}
我是否可以直接使用它,并为发布版本剥离日志
os_log("%{PUBLIC}@", log: subsystem, type: type, string)
我很困惑…不,日志在发布时不会被剥离。
OSLogType
只描述了要在控制台中过滤的消息类型。app
,debug
类型消息仍将记录在生产中
在方案中禁用操作系统日志记录的正确方法是编辑发布
方案本身:
在您的应用程序中将OS\u ACTIVITY\u MODE
环境变量设置为disable
方案,则您将不会在控制台中看到应用程序的任何日志
不过,这对存档的应用程序不起作用,但无论如何,您都不应该真正禁用生产登录。如果您真的愿意,在这种情况下可以使用预处理器指令