Google致力於提高黑人社區的種族平等。 怎麼看。
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

了解Firebase項目

此頁面簡要概述了有關Firebase項目的幾個重要概念。如果可用,請通過鏈接查找有關功能,服務甚至其他平台的更多詳細信息。在此頁面的底部,找到Firebase項目的常規最佳做法列表。

Firebase項目,應用程序和產品之間的關係

Firebase項目是Firebase的頂級實體。在項目中,您可以通過註冊iOS,Android或Web應用程序來創建Firebase應用程序。在Firebase中註冊您的應用程序之後,您可以為任意數量的Firebase產品 (例如Analytics(分析),Cloud Firestore,Performance Monitoring或Remote Config)添加Firebase SDK。

在入門指南( iOS | Android | web | Unity | C ++ )中了解有關此過程的更多詳細信息。

Firebase項目與Google Cloud Platform(GCP)之間的關係

當您在Firebase控制台中創建新的Firebase項目時,實際上是在後台創建Google Cloud Platform(GCP)項目 。您可以將GCP項目視為數據,代碼,配置和服務的虛擬容器。 Firebase項目是GCP項目,具有其他特定於Firebase的配置和服務。您甚至可以先創建一個GCP項目,然後再將Firebase添加到該項目中。

由於Firebase項目 GCP項目,因此:

設置Firebase項目並註冊應用

您可以設置Firebase項目並在Firebase控制台中註冊應用程序(或者,對於高級用例,可以通過Firebase Management REST APIFirebase CLI進行註冊 )。設置項目並註冊應用程序時,您需要做出一些組織決策並將Firebase特定的配置信息添加到本地項目。

在設置項目和註冊應用程序之前,請確保查看一些常規的項目級最佳實踐 (在本頁底部)。

項目名稱

創建項目時,請提供項目名稱 。此標識符是Firebase控制台GCP控制台Firebase CLI中項目的僅供內部使用的名稱 。在任何公開可見的Firebase或GCP產品,服務或資源中均未公開項目名稱;它只是用來幫助您更輕鬆地區分多個項目。

您可以在任何時候編輯項目名稱 項目設置了火力地堡控制台。項目名稱顯示在頂部窗格中。

項目編號

Firebase項目(及其關聯的GCP項目 )具有項目編號 。這是Google為項目分配的全局唯一規範標識符。在配置集成和/或對Firebase,Google或第三方服務進行API調用時,請使用此標識符。

API調用和項目編號

對於許多API調用,您需要為項目添加唯一標識符。儘管許多API都接受項目ID ,但建議您使用項目編號對Firebase,Google或第三方服務進行API調用。

了解有關在Google的AIP 2510標準中使用項目標識符(尤其是項目編號)的更多信息。

查找項目號

  • Firebase控制台:單擊 項目設置 。項目編號顯示在頂部窗格中。

  • Firebase CLI:運行firebase projects:list 。顯示項目編號以及與您的帳戶關聯的所有Firebase項目。

  • Firebase Management REST API:調用projects.list 。響應主體在FirebaseProject像中包含項目編號。

項目編號

Firebase項目(及其關聯的GCP項目 )具有項目ID 。這是整個Firebase和GCP中項目的用戶定義的唯一標識符。創建Firebase項目時,Firebase會自動為該項目分配一個唯一的ID,但是您可以在項目設置過程中對其進行編輯。該標識符通常應被視為引用項目的便捷別名。

如果刪除項目,則該項目ID也將被刪除,並且任何其他項目都不能再使用它。

Firebase資源和項目ID

項目ID顯示在公開可見的Firebase資源中,例如:

  • 默認託管子域- PROJECT_ID .web.appPROJECT_ID .firebaseapp.com
  • 默認的實時數據庫URL — PROJECT_ID .firebaseio.com
  • 默認雲存儲存儲桶名稱PROJECT_ID .appspot.com

對於所有上述資源,您可以創建非默認實例。非默認值的公開可見名稱是完全可自定義的。您可以將自定義域連接到Firebase託管的站點, 對Realtime Database進行分片 ,並創建多個Cloud Storage存儲桶 (訪問特定於平台的“入門”頁面)。

Firebase CLI和項目ID

對於某些用例,您可能具有與同一本地應用程序目錄關聯的多個Firebase項目。在這些情況下,當您使用Firebase CLI時 ,您需要將--project標誌與firebase命令一起傳遞,以傳達您想要與之交互的Firebase項目。

您還可以為每個Firebase項目設置一個項目別名 ,這樣您就不必記住項目ID。

API調用和項目ID

對於許多API調用,您需要為項目添加唯一標識符。儘管許多API都接受項目ID,但建議您使用項目編號對Firebase,Google或第三方服務進行API調用。

了解有關在Google的AIP 2510標準中使用項目標識符(尤其是項目編號)的更多信息。

查找項目ID

  • Firebase控制台:單擊 項目設置 。項目ID顯示在頂部窗格中。

  • Firebase CLI:運行firebase projects:list 。將顯示項目ID以及與您的帳戶關聯的所有Firebase項目。

  • Firebase Management REST API:調用projects.list 。響應主體在FirebaseProject像中包含項目ID。

Firebase配置文件和對象

當您向Firebase項目註冊應用時,Firebase控制台會提供Firebase配置文件(iOS / Android應用)或配置對象(網絡應用),您可以直接將其添加到本地應用目錄中。

  • 對於iOS應用,您可以添加GoogleService-Info.plist配置文件。
  • 對於Android應用,您可以添加google-services.json配置文件。
  • 對於Web應用程序,您添加Firebase配置對象。

您隨時可以獲取應用程序的Firebase配置文件或object

Firebase配置文件或對象將應用程序與特定的Firebase項目及其資源(數據庫,存儲桶等)相關聯。該配置包括“ Firebase選項”,這是Firebase和Google服務與Firebase服務器API進行通信以及將客戶端數據與Firebase項目和Firebase應用程序關聯所需的參數。以下是必需的最低“ Firebase選項”:

  • API密鑰 :當調用某些不需要訪問私有用戶數據的API時使用的簡單加密字符串(示例值: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO

  • 項目ID :整個Firebase和GCP中項目的用戶定義的唯一標識符。該標識符可能出現在某些Firebase資源的URL或名稱中,但通常應將其視為引用項目的便捷別名。 (示例值: myapp-project-123

  • 應用程序ID(“ AppID”) :Firebase應用程序在所有Firebase中的唯一標識符,具有特定於平台的格式:

    • Firebase iOS應用程序: 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(iOS捆綁包ID或Android軟件包名稱)以及Firebase專項的值,例如API密鑰,專案ID,實時數據庫URL和存儲桶名稱。鑑於此,請使用安全規則保護Realtime DatabaseCloud FirestoreCloud Storage中的數據和文件。

對於開源項目,我們通常不建議在源代碼管理中包含應用程序的Firebase配置文件或對象,因為在大多數情況下,您的用戶應創建自己的Firebase項目,並將其應用程序指向自己的Firebase資源(通過自己的Firebase配置)文件或對象)。

管理Firebase項目

請確保查看常規的項目級最佳實踐 (在頁面底部),以考慮可能影響您管理Firebase項目的方式的注意事項。

管理項目的工具

Firebase控制台

Firebase控制台為管理Firebase產品,應用程序和項目級別的設置提供了最豐富的環境。

Firebase控制台-項目概述屏幕

控制台的左側面板列出了按頂級類別組織的Firebase產品。點擊左側面板頂部的設置,以訪問項目的 。項目的設置包括集成訪問權限計費

控制台中間顯示按鈕,這些按鈕可啟動設置工作流以註冊各種類型的應用程序。開始使用Firebase後,控制台的主要區域變為顯示您所使用產品的統計信息的儀表板。

Firebase CLI(命令行工具)

Firebase還提供了Firebase CLI,用於配置和管理特定的Firebase產品,例如Firebase託管和Firebase的雲功能。

安裝CLI後,您可以訪問global firebase命令 。使用CLI將本地應用程序目錄鏈接到Firebase項目 ,然後部署新版本的Firebase託管內容或功能更新。

Firebase管理REST API

使用Firebase Management REST API ,您可以以編程方式管理Firebase項目。例如,您可以通過編程方式向項目註冊應用程序,或列出已註冊的應用程序( iOS | Android | web )。

一般最佳做法

將應用程序添加到項目

從最終用戶的角度來看, 確保項目中的所有應用程序都是同一應用程序的平台變體 。建議在同一Firebase項目中註冊同一應用程序或遊戲的iOS,Android和網絡版本。通常,項目中的所有應用共享相同的Firebase資源(數據庫,存儲桶等)。

如果您有多個定義不同的iOS捆綁軟件ID或Android包名稱的構建版本 ,則可以向單獨的Firebase項目註冊每個版本。但是,如果您有共享相同 Firebase資源的變體,請在相同的 Firebase項目中註冊它們。

雖然項目中的應用程序數量沒有限制,但是註冊一個應用程序可以創建一個或多個基礎OAuth 2.0客戶端ID。一個項目中最多可以創建30個客戶ID。

多租戶

不建議將幾個邏輯上獨立的應用程序和/或網站連接到單個項目(通常稱為“多租戶”)。多租戶可能導致嚴重的配置和數據隱私問題,包括分析聚合,共享身份驗證,數據庫結構過於復雜以及安全規則方面的意外問題。

通常, 如果一組應用程序不共享相同的數據和配置,請強烈考慮將每個應用程序註冊到不同的Firebase項目。

例如,如果您開發一個帶有白色標籤的應用程序,則每個獨立標籤的應用程序應具有自己的Firebase項目。每個應用程序都不(也出於隱私原因)不應該與其他應用程序共享數據。

請注意Firebase項目,應用程序和網站的一些一般限制:

  • 每個帳戶的項目數

    • 免費套餐Spark計劃-項目創建配額僅限於數量較少的項目(通常為5-10個左右)。
    • 付費計劃—只要相關的Cloud計費帳戶信譽良好,每個計費帳戶的項目創建配額就會大幅增加。

    對於大多數開發人員而言,項目創建配額的限制很少引起關注,但是如果需要,您可以請求增加項目配額

    請注意,一個項目的完全刪除需要30天,並且要計入項目配額,直到該項目被完全刪除。

  • 每個項目的應用數量

    雖然項目中的應用程序數量沒有限制,但是註冊一個應用程序可以創建一個或多個基礎OAuth 2.0客戶端ID。一個項目中最多可以創建30個客戶ID。

  • 每個項目的託管站點數量

    Firebase託管多站點功能每個項目最多支持36個站點。

啟動您的應用