遷移至主要模組中使用 Swift 擴充功能 API

我們將把 Swift 擴充功能 SDK 合併至主要 SDK,以便擴大支援 Swift 原生 API,並增加日後支援新的 Swift 語言功能的能力。下方說明我們正在進行的變更,以及這些變更對專案的預期影響。

異動內容

自 Apple 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 擴充功能,且會將 Swift 擴充功能從 Firebase 的 Package.swift 中移除。較舊版本仍可繼續運作,但無法接收更新。

如何從主模組改用 Swift 原生 API

如果您目前並未使用 Swift 擴充功能 SDK,則無須採取任何行動。如果您使用 Swift 擴充功能 SDK,請在專案中進行下列變更。

工作區變更

Swift 套件管理工具

將 Firebase 更新至 10.17.0 以上版本後,請前往目標設定中的「General」分頁,「Libraries」和「Embedded Content」部分,並移除 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,請執行以下操作:

  1. 刪除任何參照 Swift 擴充功能 SDK 的匯入陳述式。如果主要 SDK 不是單獨匯入,您必須刪除這一行尾端的 Swift,將 Swift 擴充功能匯入作業替換為主要 SDK 匯入項目。
  2. 如果您使用 Swift 的明確模組命名空間參照任何 Swift 擴充功能 SDK 類型,就必須將這些類型替換為對應的主要 SDK。舉例來說,FirebaseFirestoreSwift.QueryPredicate 需要重新命名為 FirebaseFirestore.QueryPredicate