💡開發好習慣:閱讀 Release Notes
iOS 與 Xcode 的 Bug 常常藏在 Release Notes 裡。閱讀它能幫你避開 beta 版的坑,節省數小時的除錯時間,是個投資報酬率很高的好習慣。
今天不是上班日,所以分享一個最近遇到的小坑。順便再次提醒開發者要養成閱讀 Release Notes 的好習慣。
前幾天,一位開發者朋友在用 Xcode 26 開發時遇到問題,來問我:「為什麼 SwiftUI 的 @Animatable
macro 沒辦法使用?官方文件上寫著支援 iOS 13 以上。」
我聽著覺得 @Animatable
macro 這個關鍵字很眼熟,翻了一下資料,就回答他說:「這是個坑。官方文件寫的是還在 beta 版的資訊。」
為什麼我會知道呢?因為我每週撰寫 Apple 開發者週報,有閱讀 Xcode 與 iOS 的 Release Notes 的習慣。
Animatable 是什麼?
Animatable
是個 protocol,用在 SwiftUI 建立動畫所需參數。過去開發者需要自行實作 animatableData
。
至於今天的主角 @Animatable
macro,則是 Apple 在 Xcode 26 新增的功能。可以直接套用在某個 type 上,方便用 property 來實作動畫屬性。
坑
這位朋友的 app 需要支援 iOS 26 以前系統版本,Xcode 26 不讓他使用 @Animatable
macro。只能自行實作 animatableData
。
但是,如果你去看 @Animatable
macro 的文件,會發現上面就寫著從 iOS 13 起支援。這是怎麼回事?