我們將 Swift 擴充功能 SDK 合併至主要 SDK,讓 Swift 原生 API 更廣泛地提供給使用者,並提高日後支援 Swift 新語言功能的能力。以下說明我們所做的變更,以及這些變更對專案的預期影響。
異動內容
自 Firebase for Apple SDK 10.17.0 起,Swift 擴充功能 SDK 已併入對應的主 SDK。舉例來說,FirebaseFirestoreSwift
模組中的所有 API 都已新增至 FirebaseFirestore
,因此您不必再匯入 FirebaseFirestoreSwift
模組,即可存取這些 API。
由於所有 Swift 擴充功能現在都是主要模組的一部分,因此不再需要擴充功能 SDK,且已淘汰。包含或使用 Swift 擴充功能 SDK 會引發編譯器警告,我們最快會在 2024 年 2 月停止完全發布 Swift 擴充功能。
★ 注意:Swift 擴充功能的任何目前或先前發布的版本仍可運作。不過,建議您將應用程式遷移至使用主模組的 Swift API,確保能持續接收修正項目,並善用變更和新功能。
這項異動的重要日期
2023 年 10 月
Swift 擴充功能 SDK 已併入主要 SDK,並且已淘汰,改為採用主要 SDK。請參閱第 10.17.0 版的版本資訊,瞭解這項異動。
您現在可以直接從主要 SDK 模組使用 Swift 擴充功能 SDK API。在下一個主要版本發布前,您仍可使用擴充功能 SDK,但使用時會顯示淘汰警告。
最快於 2024 年 2 月
我們將停止發布 Swift 擴充功能的新版本,並從 Firebase 的 Package.swift
中移除 Swift 擴充功能。舊版會繼續運作,但不會收到更新。
如何從主要模組遷移至使用 Swift 原生 API
如果您目前未使用 Swift 擴充功能 SDK,則無須採取任何行動。如果您使用 Swift 擴充功能 SDK,請在專案中進行以下變更。
工作區變更
Swift Package Manager
將 Firebase 更新至 10.17.0 以上版本後,請前往目標設定的「一般」分頁,然後移除 Swift 擴充功能 SDK (例如 FirebaseFirestoreSwift
) 的「架構、程式庫和嵌入式內容」部分。
CocoaPods
將 Firebase 更新至 10.17.0 以上版本後,請前往 Podfile,並移除與專案依附元件相關聯的程式碼行,以便為目標新增框架部分,並移除 Swift 擴充功能 SDK (例如 pod FirebaseFirestoreSwift
)。然後,請重新執行 pod install
指令。
ZIP 發布和 Carthage
將 Firebase 更新至 10.17.0 以上版本後,請移除專案中的任何 Swift 擴充功能 xcframeworks
(例如 FirebaseFirestoreSwift.xcframework
)。
原始碼變更
針對先前使用的所有 Swift 擴充功能 SDK,請採取下列行動:
- 刪除任何參照 Swift 擴充功能 SDK 的匯入陳述式。如果未單獨匯入主要 SDK,您必須刪除該行結尾的
Swift
,以便將 Swift 擴充功能匯入作業取代為主要 SDK 匯入作業。 - 如果您使用 Swift 的明確模組命名空間來參照任何 Swift 擴充功能 SDK 類型,就必須將這些類型替換為對應的主要 SDK。舉例來說,
FirebaseFirestoreSwift.QueryPredicate
需要重新命名為FirebaseFirestore.QueryPredicate
。