瞭解 Firebase 專案

本頁面簡要介紹 Firebase 專案的幾個重要概念。如有連結,請點選連結,進一步瞭解功能、服務、工具和最佳做法。

Firebase 專案、應用程式和產品之間的關係

Firebase 專案是 Firebase 的頂層實體。您可以在專案中註冊 Apple、Android 或網頁應用程式。將應用程式註冊至 Firebase 後,您可以為任意數量的 Firebase 產品新增 Firebase SDK,例如 AnalyticsCloud FirestorePerformance MonitoringRemote Config

如要進一步瞭解這個程序,請參閱您所用平台的《開始使用》指南:
iOS+ | Android | 網頁 | Unity | C++ | Flutter

瞭解 Firebase 專案的階層

圖表:顯示 Firebase 專案的基本階層結構,包括專案、已註冊的應用程式,以及已佈建的資源和服務 下圖顯示 Firebase 專案的基本階層。以下是主要關係:

  • Firebase 專案就像一個容器,可容納所有應用程式,以及為專案配置的任何資源和服務。

  • Firebase 專案可註冊一或多個 Firebase 應用程式 (例如 iOS 和 Android 版應用程式,或免費和付費版應用程式)。

  • 註冊至同一個 Firebase 專案的所有 Firebase 應用程式會共用並存取為專案佈建的所有相同資源和服務。例如:

    • 註冊至同一 Firebase 專案的所有 Firebase 應用程式都會共用相同的後端,例如 Firebase HostingAuthenticationRealtime DatabaseCloud FirestoreCloud StorageCloud Functions

    • 註冊至同一個 Firebase 專案的所有 Firebase 應用程式都會與同一個 Google Analytics 資源建立關聯,其中每個 Firebase 應用程式都是該資源中的個別資料串流。

Firebase 專案與 Google Cloud 之間的關係

建立新的 Firebase 專案時,您實際上是在幕後建立 Google Cloud 專案。您甚至可以先建立 Google Cloud 專案,再將 Firebase 新增至專案。您可以將 Google Cloud 專案視為資料、程式碼、設定和服務的虛擬容器。

請注意,對於所有 Firebase 專案,Firebase 會在 Google Cloud 主控台的標籤頁面中,為您的專案自動新增 firebase:enabled 標籤。如要進一步瞭解這個標籤,請參閱常見問題

由於 Firebase 專案Google Cloud 專案:

  • 您可以在 Firebase 控制台Google Cloud 控制台Google API 控制台 中與專案互動。

  • 您可以在專案中同時使用 Firebase 和 Google Cloud 的產品和 API。

  • 專案的 IAM 權限和角色會在 Firebase 和 Google Cloud 之間共用。專案成員對 Google Cloud 專案的任何存取權,也會套用至 Firebase 專案 (反之亦然)。

  • 專案的帳單會在 Firebase 和 Google Cloud 之間共用。如果 Google Cloud 專案已啟用計費功能,您的 Firebase 專案將採用 Firebase 的即付即用 Blaze 定價方案。

  • 專案的專屬 ID (例如專案編號專案 ID) 會在 Firebase 和 Google Cloud 之間共用。

  • 刪除專案會在 Firebase 和 Google Cloud 中刪除該專案。

  • 刪除或修改專案中的資源或資料,會影響 Firebase 和 Google Cloud

設定 Firebase 專案並註冊應用程式

您可以在 Firebase 控制台中設定 Firebase 專案並註冊應用程式 (如果是進階用途,則可透過 Firebase Management REST APIFirebase CLI 進行)。設定專案和註冊應用程式時,您需要做出一些組織決策,並在本機專案中新增 Firebase 專屬設定資訊。

對於實際工作環境中的應用程式,您需要設定明確的開發工作流程,通常會涉及使用多個環境。請詳閱開發人員工作流程說明文件,其中包含一般最佳做法一般安全性規範,可協助您設定 Firebase 專案和註冊應用程式,以建立開發工作流程。

與 Firebase 專案互動

除了產品 SDK 外,您還可以使用多種不同的工具和介面,直接與 Firebase 專案互動。

Firebase 主控台

Firebase 主控台提供最豐富的環境,可用於管理 Firebase 產品、應用程式和專案層級設定。

<span class=Firebase 主控台 - 專案總覽畫面" class="attempt-right screenshot" style="max-width: calc((100% - 40px)/1.75);">

控制台左側面板會列出 Firebase 產品,並按頂層類別分類。按一下左側面板頂端的 ,即可存取專案設定。專案的設定包括整合存取權限計費

主控台中間會顯示按鈕,可啟動設定工作流程來註冊各種類型的應用程式。開始使用 Firebase 後,控制台的主要區域會變成資訊主頁,用於顯示您使用的產品統計資料。

請注意,由於 Firebase 專案也是 Google Cloud 專案,因此您可能會發現各種工作或產品需要使用 Google Cloud 主控台,而非 Firebase 主控台。

Firebase CLI (指令列工具)

Firebase 也提供 Firebase CLI,可用於設定及管理特定 Firebase 產品,例如 Firebase HostingCloud Functions for FirebaseFirebase Extensions

安裝 CLI 後,您可以使用全域 firebase 指令。使用 CLI 將本機應用程式目錄連結至 Firebase 專案,然後部署 Firebase 代管內容的新版本,或更新函式。

Firebase Management REST API

您可以使用 Firebase Management REST API,透過程式碼管理 Firebase 專案。舉例來說,您可以透過程式輔助方式將應用程式註冊至專案,或列出已註冊的應用程式 (iOS+ | Android | 網頁)。

Firebase 專案 ID

Firebase 專案可在 Firebase 後端和各種開發人員介面中使用不同的識別碼進行識別,包括專案名稱專案編號專案 ID

專案名稱

建立專案時,您需要提供專案名稱。這個 ID 是 Firebase 主控台Google Cloud 主控台Firebase CLI 中專案的內部專屬名稱。專案名稱不會顯示在任何公開可見的 Firebase 或 Google Cloud 產品、服務或資源中,只是為了讓您更輕鬆地區分多個專案。

您隨時可以在 主控台的 專案設定中編輯專案名稱。Firebase專案名稱會顯示在頂端窗格中。

專案編號

Firebase 專案 (及其相關聯的 Google Cloud 專案) 都有專案編號。這是 Google 指派給專案的全域專屬標準 ID。設定整合作業和/或向 Firebase、Google 或第三方服務傳送 API 呼叫時,你必須使用這組 ID。

您無法編輯專案編號。如果您刪除專案,專案編號也會一併刪除,且永遠無法再由任何其他專案使用。

專案 ID

Firebase 專案 (及其相關聯的 Google Cloud 專案) 都有專案 ID。這是使用者在所有 Firebase 和 Google Cloud 專案中定義的專屬 ID。建立 Firebase 專案時,Firebase 會自動為專案指派專屬 ID,但您可以在專案設定期間編輯該 ID。這組 ID 通常會視為可輕鬆指稱專案的別名。

Firebase 設定檔和物件

當您透過 Firebase 專案註冊應用程式時,Firebase 主控台會提供 Firebase 設定檔 (Apple/Android 應用程式) 或設定物件 (網頁應用程式),您可以直接將這些項目新增至本機應用程式目錄。

  • 如果是 Apple 應用程式,請新增 GoogleService-Info.plist 設定檔。
  • 針對 Android 應用程式,您需要新增 google-services.json 設定檔。
  • 如果是網頁應用程式,則需要新增 Firebase 設定物件。

您隨時可以取得應用程式的 Firebase 設定檔或物件

Firebase 設定檔或物件會將應用程式與特定 Firebase 專案及其資源 (資料庫、儲存空間儲存桶等) 建立關聯。設定包含「Firebase 選項」,這是 Firebase 和 Google 服務用來與 Firebase 伺服器 API 通訊,以及將用戶端資料與 Firebase 專案和 Firebase 應用程式建立關聯所需的參數。以下是必要的最低「Firebase 選項」:

  • API 金鑰:在呼叫不需要存取私人使用者資料的特定 API 時,所使用的簡易加密字串 (範例值:AIzaSyDOCAbC123dEf456GhI789jKl012-MnO)

  • 專案 ID:在所有 Firebase 和 Google Cloud 中,專案的使用者定義專屬 ID。這組 ID 可能會出現在部分 Firebase 資源的網址或名稱中,但一般會視為可輕鬆指稱專案的別名。(範例值:myapp-project-123)

  • 應用程式 ID (「AppID」):在整個 Firebase 中,Firebase 應用程式的專屬 ID,採用平台專屬格式:

    • Firebase Apple 應用程式:GOOGLE_APP_ID (範例值:1:1234567890:ios:321abc456def7890)
      這不是 Apple 軟體包 ID。
    • Firebase Android 應用程式:mobilesdk_app_id (範例值:1:1234567890:android:321abc456def7890)
      不是 Android 套件名稱或 Android 應用程式 ID。
    • Firebase Web 應用程式:appId (範例值:1:65211879909:web:3ae38ef1cdcb2e01fe5f0c)

Firebase 設定檔或物件的內容視為公開,包括應用程式的平台專屬 ID (Apple 軟體包 ID 或 Android 套件名稱),以及 Firebase 專屬專案值,例如 API 金鑰、專案 ID、Realtime Database 網址和 Cloud Storage 儲存桶名稱。因此,請使用 Firebase Security Rules 保護 Realtime DatabaseCloud FirestoreCloud Storage 中的資料和檔案。

對於開放原始碼專案,我們通常不建議在來源控管中加入應用程式的 Firebase 設定檔或物件,因為在大多數情況下,使用者應自行建立 Firebase 專案,並將應用程式指向自己的 Firebase 資源 (透過自己的 Firebase 設定檔或物件)。

Firebase 專案、應用程式和網站的一般限制

以下是 Firebase 專案、應用程式和網站的一般限制:

  • 每個帳戶的專案數量

    • Spark 定價方案:專案建立配額限制在較低的專案數量 (通常約 5 到 10 個)。
    • Blaze 定價方案:只要相關聯的 Cloud Billing 帳戶狀況良好,每個帳戶的專案建立配額就會大幅增加。

    大多數開發人員不太在意專案建立配額的限制,但如有需要,您可以要求增加專案配額

    請注意,專案必須經過 30 天才能徹底刪除,且在刪除前會計入專案配額。

  • 每個專案的應用程式數量

    Firebase 將 Firebase 專案中的 Firebase 應用程式總數限制在 30 個。

    從使用者角度來看,您應確保單一 Firebase 專案中的所有 Firebase 應用程式都是相同應用程式的平台變化版本。請參閱最佳做法文件,進一步瞭解多租戶架構

    如要進一步瞭解每項專案的應用程式限制,請參閱常見問題。

  • 每個專案的 Hosting 網站數量

    Firebase Hosting 多網站功能最多支援每個專案 36 個網站。

發布應用程式