由于NSLog语句会降低应用程序的速度,因此建议在发布之前将其删除。回溯到2010年的一些older answers on SO建议将一些代码放在pch文件中,例如:
#ifndef DEBUG
#define NSLog(...);
#endif
但是,Xcode不再自动创建pch文件。我收集它可以手动创建一个pch文件,但这似乎有点像kludge。手动创建一个pch文件并将上面的代码添加到它仍然是在发布之前注释掉NSLog语句的推荐方法,还是有更现代的方法?
答案 0 :(得分:2)
我发现的所有旧答案(包括添加PCH文件)都不适用于Swift。这终于对我有用:
#if !DEBUG public func NSLog(_ format: String, _ args: CVarArg...) { } public func print(_ items: Any..., separator: String = " ", terminator: String = "\n") { } #endif
答案 1 :(得分:1)
仍然可以创建预编译的标头,但是不鼓励这样做,至少在默认情况下是这样。为此,请编辑目标的构建设置,并定义前缀头的路径。
使用记录库
也许您可以使用日志库,例如CocoaLumberJack,或here是一个非常简单的日志库,但它仍能正常运行。