如何使用 OSLogMessage 字符串?

Ste*_*han 12 swift

给定以下两行,XCode 显示第二行错误Cannot convert value of type 'String' to expected argument type 'OSLogMessage': 。

logger.info("Device found:")
logger.info(String(describing: device))
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么显示此错误吗?在这两种情况下,参数都是 String 类型。(我猜)

目前,我通过使用字符串插值来解决此问题。但这感觉不对。有没有比以下更好的方法:

logger.info("\(String(describing: device))")
Run Code Online (Sandbox Code Playgroud)

Nes*_*tor 2

(也许令人惊讶)答案是,出于隐私原因,OSLog 不允许记录任意字符串。这不是语言限制,而是控制日志中用户数据可用性的策略。