本頁面提供使用 Firebase 時可能遇到的 Apple 平台專屬問題的提示和疑難排解方法。
是否遇到其他挑戰,或是您的問題與下方無關?如要進一步瞭解 Firebase 或特定產品的常見問題,請務必查看 主要 Firebase 常見問題。
您也可以查看 Firebase Apple 平台 SDK GitHub 存放區,取得已回報的問題和疑難排解的最新清單。我們也鼓勵您在該頁面中提交自己的 Firebase Apple 平台 SDK 相關問題!
我的應用程式會提示使用者輸入密碼,以便存取 macOS 上的鑰匙圈項目。該如何解決這個問題?
將 Firebase 依附元件升級至 9.6.0 以上版本,並將「Keychain 共用功能」新增至目標。
為什麼 Firebase 需要 macOS 上的鑰匙圈分享功能?
Firebase SDK 會使用鑰匙圈來儲存資訊,例如用於 FCM 的 Firebase 安裝 ID。如果沒有鑰匙圈存取權,Firebase SDK 可能無法正常運作。macOS 鑰匙圈的運作方式與其他平台 (iOS、tvOS、macCatalyst 和 watchOS) 使用的 iOS 風格鑰匙圈不同。
在 macOS 上,應用程式會使用共用鑰匙圈,這可能會遭其他應用程式和程序修改。與 iOS 不同,Android 沒有應用程式可隱含存取的沙箱鑰匙圈。因此,當 Mac 應用程式與鑰匙圈互動時,系統會提示使用者進行存取,因為 Mac 應用程式可能會修改並非由其建立的鑰匙圈項目。為解決這種差異,Firebase 會使用 kSecUseDataProtectionKeychain
金鑰查詢鑰匙圈,要求應用程式查詢屬於鑰匙圈存取權群組的鑰匙圈項目 (這是其他平台上的預設行為)。應用程式需要使用 Keychain Sharing 功能,才能合成可在目標之間共用的存取群組,進而授予應用程式存取存取群組中 Keychain 項目的權限。
詳情請參閱 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
,系統會自動略過部分配置。視加入深層連結的順序而定,應用程式可能無法執行特定深層連結。