これはリンクされた質問の複製ではありません
print
とNSLog
の違いを探していませんprint
を使用しています)現在、いくつかのグローバル関数でprint
ステートメントを使用しています
os_log
を見てください。それはあなたが探しているすべてのものを提供しています。
Swift forums からのこのスレッドをご覧になることを強くお勧めします。tl; dr
これはAppleの推奨事項ですが、ログの取得に関する懸念のため、その使用法については議論されています。
開発中のデバッグには最適ですが、アプリユーザーがトリガー、取得、送信するのは面倒です。
例:
let customLog = OSLog(subsystem: "com.your_company.your_subsystem_name", category: "Category")
os_log("This is info that may be helpful during development or debugging.", log: customLog, type: .debug)
いくつかの素晴らしい参考文献:
NSLog
は非推奨であり、新しいos_log
ライブラリを使用する利点のいくつかについて説明します。os_log
が非常に強力である理由は次のとおりです。
private
およびpublic
ログprint
とは異なり、os_log
は、リリースされたアプリを(リアルタイムで)確認し、コンソールアプリでログを表示するために使用できます。これは、 貪欲なXcode のないアプリケーションのライフサイクルの変化を観察するのに最適です。 Xcodeでは、アプリを一時停止状態にすることはできません...
注:os_log
は+ iOS10でのみ使用できます
2018年と2019年のWWDCからの新しいビデオもありますが、os_signpost
に重点を置いています。見る: