作者:撒药拿拉的唐小妄 | 来源:互联网 | 2023-02-02 12:43
我正在阅读一些关于如何构建简单应用程序的Swift教程,因为我刚开始编写代码.我想让我的应用程序iOS 9兼容,因为我有一个iPad 3.但是,所有os.log
语句都在Xcode中生成一个错误,它告诉我if #avaliable
在任何语句之前添加一个os.log
语句.os.log做了什么,如果我需要它,是否存在使用if #avaliable
iOS 9兼容性声明的问题?如果没有,那么在else
声明之后的if #avaliable
声明中,iOS 9的等效代码是什么?谢谢.
1> David S...:
来自Apple的文档:
统一日志记录可在iOS 10.0及更高版本,macOS 10.12及更高版本,tvOS 10.0及更高版本以及watchOS 3.0及更高版本中使用,并取代ASL(Apple System Logger)和Syslog API.历史上,日志消息被写入磁盘上的特定位置,例如/etc/system.log.统一日志记录系统将消息存储在内存和数据存储中,而不是写入基于文本的日志文件.
没有iOS9等价物.你可以使用像CocoaLumberjack这样的第三方日志工具,它非常受欢迎.
作为如何使用此日志记录的具体示例:
if #available(iOS 10.0, *) {
let bundleID:String = Bundle.main.bundleIdentifier ?? "unknown"
let oslog = OSLog(subsystem: bundleID, category: "Model")
os_log("%@", log: oslog, type: .info, message)
}