大家Xcode印debug訊息應該都是用print()吧😗
最近看了WWDC23的影片,現在還有Logger可以用,搭配Xcode15讓你一目瞭然,馬上就來試用看看
import os
let logger = Logger(subsystem: "ButtonDemo", category: "Button")
logger.log("button is pressed")
基本就這樣👏
也可以把log輸出成一個檔案
log collect --device --start '2024-06-21 16:42:00' --output ButtonDemo.logarchive
有五種可以用,訊息持久性(message persistence)由小到大,Performace由快到慢
要用iOS17以上裝置跑+把Metadata的選項打開,才會有精美UI
iOS15跟16長得平凡無奇🫥
為何console都是一片黑? 很可能是專案設定早就把系統的log都禁掉了(像我的專案就是QQ)
要去scheme> OS_ACTIVITY_MODE disable拿掉,就會出現了
更好的組織Log:以前因為print太多,前面都會加一些奇怪符號
@@@@@@@@@@@@@@@@@@
============
有了subsystem跟category就比較好分類,找到自己在哪。
例如:我們有個打API的套件會印response出來,每次要看,都要在茫茫print中找半天
用新的就可以把subsystem設成套件名稱,category設成api的path
這樣就變得非常好搜尋。
我認為的缺點🥹
這邊有人做文字整理版的,滿不錯的
https://www.wwdcnotes.com/notes/wwdc20/10168/
https://www.wwdcnotes.com/notes/wwdc23/10226/