本頁面提供提示和疑難排解資訊,協助您解決使用 Firebase 時可能遇到的 Apple 平台專屬問題。
遇到其他問題,或找不到下方列出的問題嗎?如要查看更多 Firebase 或產品專屬的常見問題,請務必參閱主要 Firebase 常見問題。
您也可以前往 Firebase Apple 平台 SDK GitHub 存放區,查看最新回報的問題清單和疑難排解資訊。我們也鼓勵您在該處回報 Firebase Apple 平台 SDK 的相關問題!
Firebase 支援哪些版本的 Xcode?
Firebase 最多支援兩個主要版本的 Xcode,不包括 Apple 不再支援的 Xcode 版本。舉例來說,自 2019 年 3 月起,Apple 要求所有應用程式至少須支援 iOS 12,這表示 Xcode 9 不再受支援,只有 Xcode 10 這個主要版本支援。
支援特定 Xcode 次要或修補程式版本 (例如 9.2.0 至 9.4.1) 的變更,取決於 Firebase Apple 平台 SDK 的需求和開發人員使用情況調查。這些變更會反映在 Firebase Apple 平台 SDK 版本資訊和 Firebase Apple 平台 SDK 設定頁面。
如要查看 SDK 支援的最低 Xcode 版本,請參閱「將 Firebase 新增至 Apple 專案」一文列出的需求條件。
我們會盡力支援 Xcode Beta 版的 Firebase。開發人員可以在 GitHub 上的 Firebase Apple 平台 SDK 存放區中追蹤及提交問題。
我的應用程式會提示使用者輸入密碼,以便存取 macOS 上的鑰匙圈項目。如何修正這個問題?
將 Firebase 依附元件升級至 9.6.0 以上版本,並將 [鑰匙圈分享功能](/docs/ios/troubleshooting-faq#macos-keychain-sharing)新增至目標。
為什麼 Firebase 需要 macOS 的「鑰匙圈共享」功能?
Firebase SDK 會使用鑰匙圈儲存資訊,例如用於 FCM 的 Firebase 安裝 ID。如果沒有鑰匙圈存取權,Firebase SDK 可能無法正常運作。macOS 鑰匙圈的運作方式與其他平台 (iOS、tvOS、macCatalyst 和 watchOS) 使用的 iOS 樣式鑰匙圈不同。
在 macOS 上,應用程式會使用共用鑰匙圈,其他應用程式和程序可能會修改這個鑰匙圈。與 iOS 不同,應用程式無法隱含存取沙箱化的鑰匙圈。因此,當 Mac 應用程式與鑰匙圈互動時,系統會提示使用者授予存取權,因為 Mac 應用程式可能會修改並非由該應用程式建立的鑰匙圈項目。為解決這項差異,Firebase 會使用 kSecUseDataProtectionKeychain
金鑰查詢鑰匙圈,指示應用程式查詢屬於鑰匙圈存取群組的鑰匙圈項目 (這是其他平台的預設行為)。應用程式需要「鑰匙圈分享」功能來合成可在目標之間共用的存取群組,因此必須具備這項功能,應用程式才能自由存取存取群組中的鑰匙圈項目。
詳情請參閱 Apple 的 「鑰匙圈」說明文件 。
在 Xcode 13 以上版本中,為什麼我的 UIKit 應用程式無法開啟我在 Info.plist 中註冊的部分網址?
Apple 在 Info.plist
檔案中導入 50 個 LSApplicationQueriesSchemes
項目上限。2015 年,Apple 推出 LSApplicationQueriesSchemes
,限制每個應用程式可發出的網址查詢次數。Xcode 13 發布後,系統會強制執行這些限制,而 Xcode 12 和更早版本則沒有方案數量限制。
部分 Firebase 產品 (例如 Firebase Authentication 和 Firebase Dynamic Links) 需要使用自訂網址通訊協定,才能重新導向至您的應用程式。這些網址符合簡潔一致的網址配置,不應大幅計入 50 個連結配置的限制。
請注意,如果應用程式持續註冊超過 50 個 LSApplicationQueriesSchemes
,系統會自動忽略部分配置。視深層連結的加入順序而定,應用程式可能無法執行特定深層連結。