我正在从事一个具有客观性C的项目。我想使用os_log,但无法弄清楚。 我可以使日志工作到默认日志,但是如果尝试创建自定义日志,则编译器会抱怨不了解我的objC文件中的OSLog
这是快速扩展名:
import os.log
extension OSLog {
private static var subsystem = Bundle.main.bundleIdentifier!
static let main = OSLog(subsystem: subsystem, category: "main")
}
在我的ObjectiveC文件中,导入-Swift.h文件,它可以看到我拥有的其他swift类,但仍然看不到OSLog。
os_log_debug([OSLog main], "message");
得到以下错误: -使用未声明的标识符“ Log”;你是说“日志”吗? -错误的接收者类型'void(*)(id,...)'
我显然错过了一些东西...
答案 0 :(得分:0)
尝试在@objc
之前添加extension
:
@objc extension OSLog {
private static var subsystem = Bundle.main.bundleIdentifier!
static let main = OSLog(subsystem: subsystem, category: "main")
}