初始化選項疑難解答

如果您在沒有一組有效的 Firebase 選項的情況下初始化應用程序,則應用程式的新用戶將遇到嚴重問題。

Firebase 選項是服務所需的一組參數,以便與 Firebase 伺服器 API 成功通訊並將用戶端資料與 Firebase 專案和 Firebase 應用程式關聯。 Firebase 服務依賴 Firebase 初始化期間建立的 Firebase 核心/通用程式庫中提供的有效 Firebase 選項。

不同的 Firebase 服務需要不同的 Firebase 選項才能正常執行,但所有 Firebase 服務都需要以下 Firebase 選項:

  • API 金鑰- 注意:這不是FCM 伺服器金鑰,請參閱FCM 伺服器金鑰
    範例值: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
  • 項目 ID - 範例值: myapp-project-123
  • 應用程式 ID (“AppID”) - 您的應用程式的唯一標識符,其格式取決於平台:
    • 對於 Android: mobilesdk_app_id —注意:這不是 Android 套件名稱
      範例值: 1:1234567890:android:321abc456def7890
    • 對於 iOS+: GOOGLE_APP_ID —注意:這不是 Apple Bundle ID
      範例值: 1:1234567890:ios:321abc456def7890

Android 應用程式故障排除

為了提高安全性,Firebase SDK於 2 月 27 日更新,隨後將 Firebase 實例 ID 服務替換為對Firebase Installations API的依賴項。

Firebase 安裝強制強制 Firebase 選項 API 金鑰、專案 ID 和應用程式 ID 的存在和有效性,以便將用戶端資料與您的 Firebase 項目關聯。請參閱FirebaseOptions以了解更多資訊。

帶有 Firebase 實例 ID (IID) 的 Firebase 雲端訊息傳遞 (FCM)

如果您的應用程式的新使用者遇到 FCM 問題,則可能是您在初始化 Firebase 時沒有使用所需的 Firebase 選項集。

您的應用程式可能使用不完整或錯誤的google-services.json設定檔;或者您的應用程式以程式設計方式初始化 Firebase,但沒有所需的全套 Firebase 選項。

因此,對於使用更新後的 Firebase SDK 發布應用程式後安裝您的應用程式的最終用戶來說,Firebase 雲端訊息傳遞等 Firebase 服務將會出現故障。此外,對 Firebase 的重複失敗請求可能會降低應用程式的最終使用者體驗。

我需要做什麼?

若要修復應用程式故障的 Firebase 服務:

  1. 透過使用專案的有效 API 金鑰、有效的專案 ID 和有效的應用程式 ID( mobilesdk_app_id或「應用程式 ID」)初始化 Firebase 來更新您的應用程式。
    • 使用 Firebase 設定檔的預設初始化過程:從 Firebase 控制台下載 google-services.json 設定文件,然後取代應用程式中的現有檔案。
    • 使用FirebaseOptions物件進行程式設計初始化:從 Firebase 控制台下載 google-services.json 設定檔以尋找 API 金鑰、專案 ID 和應用程式 ID,然後更新應用程式中FirebaseOptions物件中的這些值。
  2. 將應用程式的新版本發佈到 Play 商店。

Apple 應用程式故障排除

為了提高安全性,Firebase SDK於 1 月 14 日更新,隨後將 Firebase 實例 ID 服務替換為對Firebase Installations API 的依賴項。

Firebase 安裝強制強制 Firebase 選項 API 金鑰、專案 ID 和應用程式 ID 的存在和有效性,以便將用戶端資料與您的 Firebase 項目關聯。有關詳細信息,請參閱FIROptions

帶有 Firebase 實例 ID (IID) 的 Firebase 雲端訊息傳遞 (FCM)

如果您的應用程式的新使用者遇到 FCM 問題,則可能是您在初始化 Firebase 時沒有使用所需的 Firebase 選項集。

您的應用程式可能使用不完整或無效的GoogleService-Info.plist設定檔;或者您的應用程式以程式設計方式初始化 Firebase,但沒有所需的全套 Firebase 選項。

因此,對於使用更新後的 Firebase SDK 發布應用程式後安裝您的應用程式的最終用戶來說,Firebase 雲端訊息傳遞等 Firebase 服務將會出現故障。此外,對 Firebase 的重複失敗請求可能會降低應用程式的最終使用者體驗。

我需要做什麼?

若要修復應用程式故障的 Firebase 服務:

  1. 透過使用專案的有效 API 金鑰、有效的專案 ID 和有效的應用程式 ID( GOOGLE_APP_ID或「應用程式 ID」)初始化 Firebase 來更新您的應用程式。
    1. 使用 Firebase 設定檔的預設初始化過程:從 Firebase 控制台下載 GoogleService-Info.plist 設定文件,然後取代應用程式中的現有檔案。
    2. 使用FIROptions物件進行程式設計初始化:從 Firebase 控制台下載 GoogleService-Info.plist 設定檔以尋找 API 金鑰、專案 ID 和應用程式 ID,然後更新應用程式中FIROptions物件中的這些值。
  2. 將應用程式的新版本發佈到 App Store。

FCM 伺服器金鑰

如果您的應用程式使用FCM 伺服器金鑰而不是雲端 API 金鑰,那麼當您使用相同的 FCM 伺服器金鑰透過 FCM 發送推播通知時,可能會導致安全漏洞。在這種情況下,我們強烈建議您修改伺服器對傳送至 FCM 的請求進行身份驗證的方式。

請注意,FCM 伺服器金鑰(與 Firebase/Cloud API 金鑰不同)不得包含在應用程式中,因為它們可能會被濫用以您的專案名稱發送推播通知。