Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Hiểu các dự án Firebase

Trang này cung cấp tổng quan ngắn gọn về một số khái niệm quan trọng về các dự án Firebase. Khi có sẵn, hãy nhấp vào các liên kết để tìm thêm thông tin chi tiết về các tính năng, dịch vụ và thậm chí cả các nền tảng khác. Ở dưới cùng của trang này, hãy tìm một danh sách các thực hành tốt nhất chung cho các dự án căn cứ hỏa lực.

Mối quan hệ giữa các dự án, ứng dụng và sản phẩm Firebase

Dự án Firebase là thực thể cấp cao nhất cho Firebase. Trong một dự án, bạn tạo ứng dụng Firebase bằng cách đăng ký ứng dụng iOS, Android hoặc web của mình. Sau khi đăng ký các ứng dụng của bạn với căn cứ hỏa lực, bạn có thể thêm SDK căn cứ hỏa lực cho bất kỳ số lượng các sản phẩm căn cứ hỏa lực , như Analytics, Cloud FireStore, giám sát hiệu suất, hoặc từ xa Config.

Tìm hiểu thông tin chi tiết hơn về quá trình này trong hướng dẫn Bắt đầu ( iOS | Android | web | Unity | C ++ ).

Mối quan hệ giữa các dự án Firebase và Google Cloud

Khi bạn tạo một dự án căn cứ hỏa lực mới trong căn cứ hỏa lực điều khiển, bạn đang thực sự tạo ra một dự án Google Cloud đằng sau hậu trường. Bạn có thể coi dự án Google Cloud như một vùng chứa ảo cho dữ liệu, mã, cấu hình và dịch vụ. Dự án Firebase là một dự án Google Cloud có các cấu hình và dịch vụ bổ sung dành riêng cho Firebase. Bạn thậm chí có thể tạo một dự án Google Cloud trước, sau đó thêm Firebase vào dự án sau.

Kể từ khi một dự án căn cứ hỏa lực một dự án Google Cloud:

Thiết lập dự án Firebase và đăng ký ứng dụng

Bạn có thể thiết lập một dự án căn cứ hỏa lực và đăng ký ứng dụng trong căn cứ hỏa lực console (hoặc, đối với trường hợp sử dụng tiên tiến, thông qua các căn cứ hỏa lực quản lý API REST hoặc căn cứ hỏa lực CLI ). Khi thiết lập dự án và đăng ký ứng dụng, bạn cần đưa ra một số quyết định về tổ chức và thêm thông tin cấu hình dành riêng cho Firebase vào các dự án địa phương của mình.

Hãy chắc chắn để xem xét một số thông lệ tốt nhất dự án cấp chung (ở dưới cùng của trang này) trước khi thiết lập một dự án và đăng ký các ứng dụng.

Tên dự án

Khi bạn tạo một dự án, bạn cung cấp một tên dự án. Định danh này là tên nội bộ chỉ dành cho một dự án trong căn cứ hỏa lực console , các đám mây của Google Bảng điều khiển , và các căn cứ hỏa lực CLI . Tên dự án không được hiển thị trong bất kỳ sản phẩm, dịch vụ hoặc tài nguyên Firebase hoặc Google Cloud nào hiển thị công khai; nó chỉ đơn giản là giúp bạn dễ dàng phân biệt giữa nhiều dự án.

Bạn có thể chỉnh sửa một tên dự án bất cứ lúc nào trong các thiết lập dự án của các firebase console. Tên dự án được hiển thị trong ngăn trên cùng.

Số dự án

Một dự án căn cứ hỏa lực (và nó dự án đám mây Google liên kết ) có một số dự án. Đây là số nhận dạng chuẩn duy nhất trên toàn cầu do Google chỉ định cho dự án. Sử dụng số nhận dạng này khi định cấu hình tích hợp và / hoặc thực hiện lệnh gọi API tới Firebase, Google hoặc các dịch vụ của bên thứ ba.

Lệnh gọi API và số dự án

Đối với nhiều lệnh gọi API, bạn cần bao gồm một số nhận dạng duy nhất cho một dự án. Mặc dù nhiều API chấp nhận ID dự án , đó là khuyến cáo rằng bạn sử dụng số dự án thực hiện cuộc gọi API để căn cứ hỏa lực, Google, hoặc các dịch vụ của bên thứ ba.

Tìm hiểu thêm về việc sử dụng định danh của dự án, đặc biệt là số lượng dự án, trong của Google chuẩn AIP 2510 .

Tìm số dự án

  • Giao diện điều khiển căn cứ hỏa lực: Bấm các thiết lập dự án . Số dự án được hiển thị trong ngăn trên cùng.

  • Căn cứ hỏa lực CLI: Run firebase projects:list . Số dự án được hiển thị cùng với tất cả các dự án Firebase được liên kết với tài khoản của bạn.

  • Căn cứ hỏa lực quản lý REST API: Gọi projects.list . Cơ thể phản ứng chứa số dự án trong FirebaseProject đối tượng.

ID dự án

Một dự án căn cứ hỏa lực (và nó dự án đám mây Google liên kết ) có một ID dự án. Đây là số nhận dạng duy nhất do người dùng xác định cho dự án trên tất cả Firebase và Google Cloud. Khi bạn tạo một dự án Firebase, Firebase sẽ tự động gán một ID duy nhất cho dự án, nhưng bạn có thể chỉnh sửa nó trong quá trình thiết lập dự án. Mã định danh này thường được coi như một bí danh tiện lợi để tham chiếu đến dự án.

Nếu bạn xóa một dự án, ID dự án cũng sẽ bị xóa và không bao giờ có thể được sử dụng lại bởi bất kỳ dự án nào khác.

Tài nguyên Firebase và ID dự án

ID dự án hiển thị trong các tài nguyên Firebase hiển thị công khai, ví dụ:

  • Mặc định Hosting subdomain - PROJECT_ID .web.appPROJECT_ID .firebaseapp.com
  • URL mặc định Cơ sở dữ liệu thời gian thực - PROJECT_ID -default-rtdb.firebaseio.com hoặc PROJECT_ID -default-rtdb. REGION_CODE .firebasedatabase.app
  • Mặc định Cloud Storage tên xô - PROJECT_ID .appspot.com

Đối với tất cả các tài nguyên nói trên, bạn có thể tạo các phiên bản không phải mặc định. Các tên hiển thị công khai của không mặc định có thể tùy chỉnh hoàn toàn. Bạn có thể kết nối miền tùy chỉnh đến một trang web căn cứ hỏa lực chủ trì, Shard cơ sở dữ liệu thời gian thực , và tạo nhiều xô Cloud Storage (truy cập vào trang nền tảng cụ thể Bắt đầu).

Firebase CLI và ID dự án

Đối với một số trường hợp sử dụng, bạn có thể có nhiều dự án Firebase được liên kết với cùng một thư mục ứng dụng cục bộ. Trong những tình huống này, khi bạn sử dụng các căn cứ hỏa lực CLI , bạn cần phải vượt qua --project cờ với các firebase lệnh để giao tiếp mà căn cứ hỏa lực dự án bạn muốn tương tác với.

Bạn cũng có thể thiết lập một bí danh dự án cho từng dự án căn cứ hỏa lực để bạn không cần phải nhớ ID dự án.

Lệnh gọi API và ID dự án

Đối với nhiều lệnh gọi API, bạn cần bao gồm một số nhận dạng duy nhất cho một dự án. Mặc dù nhiều API chấp nhận ID dự án, đó là khuyến cáo rằng bạn sử dụng số dự án thực hiện cuộc gọi API để căn cứ hỏa lực, Google, hoặc các dịch vụ của bên thứ ba.

Tìm hiểu thêm về việc sử dụng định danh của dự án, đặc biệt là số lượng dự án, trong của Google chuẩn AIP 2510 .

Tìm ID dự án

  • Giao diện điều khiển căn cứ hỏa lực: Bấm các thiết lập dự án . ID dự án được hiển thị trong ngăn trên cùng.

  • Căn cứ hỏa lực CLI: Run firebase projects:list . ID dự án được hiển thị cùng với tất cả các dự án Firebase được liên kết với tài khoản của bạn.

  • Căn cứ hỏa lực quản lý REST API: Gọi projects.list . Cơ thể phản ứng chứa ID dự án trong FirebaseProject đối tượng.

Tệp và đối tượng cấu hình Firebase

Khi bạn đăng ký ứng dụng với dự án Firebase, bảng điều khiển Firebase cung cấp tệp cấu hình Firebase (ứng dụng iOS / Android) hoặc đối tượng cấu hình (ứng dụng web) mà bạn thêm trực tiếp vào thư mục ứng dụng cục bộ của mình.

  • Đối với ứng dụng iOS, bạn thêm một GoogleService-Info.plist tập tin cấu hình.
  • Đối với các ứng dụng Android, bạn thêm một google-services.json tập tin cấu hình.
  • Đối với ứng dụng web, bạn thêm đối tượng cấu hình Firebase.

Bất cứ lúc nào, bạn có thể có được căn cứ hỏa lực tập tin cấu hình của một ứng dụng hoặc đối tượng .

Đối tượng hoặc tệp cấu hình Firebase liên kết ứng dụng với một dự án Firebase cụ thể và các tài nguyên của nó (cơ sở dữ liệu, nhóm lưu trữ, v.v.). Cấu hình bao gồm "tùy chọn Firebase", là các tham số mà các dịch vụ của Firebase và Google yêu cầu để giao tiếp với các API máy chủ Firebase và để liên kết dữ liệu khách với dự án Firebase và ứng dụng Firebase. Dưới đây là "tùy chọn Firebase" bắt buộc, tối thiểu:

  • Khóa API : một đơn giản mã hóa chuỗi được sử dụng khi gọi API chắc chắn rằng không cần phải truy cập dữ liệu người dùng cá nhân (ví dụ giá trị: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO )

  • ID dự án : một định danh duy nhất người dùng định nghĩa cho các dự án trên tất cả các căn cứ hỏa lực và Google Cloud. Giá trị nhận dạng này có thể xuất hiện trong URL hoặc tên của một số tài nguyên Firebase, nhưng nó thường được coi như một bí danh tiện lợi để tham chiếu dự án. (ví dụ giá trị: myapp-project-123 )

  • Application ID ( "AppID"): định danh duy nhất cho các ứng dụng căn cứ hỏa lực trên tất cả các căn cứ hỏa lực với một định dạng nền tảng cụ thể:

    • Căn cứ hỏa lực iOS apps: GOOGLE_APP_ID (ví dụ giá trị: 1:1234567890:ios:321abc456def7890 )
      Đây không phải là một Apple ID theo gói không.
    • Căn cứ hỏa lực ứng dụng Android: mobilesdk_app_id (ví dụ giá trị: 1:1234567890:android:321abc456def7890 )
      Đây không phải là một tên gói Android hoặc ứng dụng ID Android.
    • Căn cứ hỏa lực Web apps: appId (ví dụ giá trị: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

Nội dung của tệp hoặc đối tượng cấu hình Firebase được coi là công khai, bao gồm ID dành riêng cho nền tảng của ứng dụng (ID gói iOS hoặc tên gói Android) và các giá trị dành riêng cho dự án Firebase, như Khóa API, ID dự án, URL cơ sở dữ liệu thời gian thực và Tên nhóm Cloud Storage. Vì điều này, sử dụng Quy định căn cứ hỏa lực an ninh để bảo vệ dữ liệu và các tập tin của bạn trong cơ sở dữ liệu thời gian thực , đám mây FireStore , và Cloud Storage .

Đối với các dự án nguồn mở, chúng tôi thường không khuyên bạn nên bao gồm tệp hoặc đối tượng cấu hình Firebase của ứng dụng trong kiểm soát nguồn bởi vì, trong hầu hết các trường hợp, người dùng của bạn nên tạo dự án Firebase của riêng họ và trỏ ứng dụng của họ đến tài nguyên Firebase của riêng họ (thông qua cấu hình Firebase của riêng họ tệp hoặc đối tượng).

Quản lý dự án Firebase

Hãy chắc chắn để xem xét các thông lệ tốt nhất dự án cấp chung (ở dưới cùng của trang này) để cân nhắc mà có thể ảnh hưởng đến cách bạn quản lý một dự án căn cứ hỏa lực.

Các công cụ để quản lý một dự án

Bảng điều khiển Firebase

Các căn cứ hỏa lực console Mời các môi trường giàu nhất cho việc quản lý các sản phẩm căn cứ hỏa lực, ứng dụng và thiết lập dự án cấp.

Bảng điều khiển Firebase - màn hình tổng quan về dự án

Bảng điều khiển bên trái của bảng điều khiển liệt kê các sản phẩm Firebase, được sắp xếp theo các danh mục cấp cao nhất. Ở phía trên cùng của bảng điều khiển bên trái, truy cập các thiết lập của dự án bằng cách nhấn vào . Cài đặt A của dự án bao gồm tích hợp , cho phép truy cập , và thanh toán .

Giữa bảng điều khiển hiển thị các nút khởi chạy quy trình thiết lập để đăng ký nhiều loại ứng dụng khác nhau. Sau khi bạn bắt đầu sử dụng Firebase, khu vực chính của bảng điều khiển sẽ thay đổi thành trang tổng quan hiển thị số liệu thống kê về các sản phẩm bạn sử dụng.

Firebase CLI (một công cụ dòng lệnh)

Căn cứ hỏa lực cũng cung cấp các căn cứ hỏa lực CLI để cấu hình và quản lý sản phẩm cụ thể căn cứ hỏa lực, giống như căn cứ hỏa lực Hosting và chức năng đám mây cho căn cứ hỏa lực.

Sau khi cài đặt CLI, bạn có thể truy cập toàn cầu firebase chỉ huy . Sử dụng CLI để liên kết thư mục ứng dụng địa phương của bạn để một dự án căn cứ hỏa lực , sau đó triển khai phiên bản mới của nội dung căn cứ hỏa lực chủ trì hoặc cập nhật các chức năng.

API REST quản lý Firebase

Sử dụng API căn cứ hỏa lực quản lý REST của , bạn lập trình có thể quản lý một dự án căn cứ hỏa lực. Ví dụ, bạn lập trình có thể đăng ký một ứng dụng với một dự án hoặc liệt kê các ứng dụng đã đăng ký ( iOS | Android | web ).

Các phương pháp hay nhất chung

Thêm ứng dụng vào dự án

Đảm bảo rằng tất cả các ứng dụng trong một dự án là biến thể nền tảng của ứng dụng tương tự từ một góc độ người dùng cuối. Bạn nên đăng ký phiên bản iOS, Android và web của cùng một ứng dụng hoặc trò chơi với cùng một dự án Firebase. Tất cả các ứng dụng trong một dự án thường chia sẻ cùng một tài nguyên Firebase (cơ sở dữ liệu, nhóm lưu trữ, v.v.).

Nếu bạn có nhiều build biến thể với iOS khác nhau bó ID hoặc tên gói Android xác định, bạn có thể đăng ký mỗi biến thể với một dự án căn cứ hỏa lực riêng biệt. Tuy nhiên, nếu bạn có các biến thể mà phần các nguồn lực căn cứ hỏa lực cùng, đăng ký với dự án căn cứ hỏa lực tương tự.

Dưới đây là một số giới hạn chung cho các dự án, ứng dụng và trang web Firebase:

  • Số lượng dự án trên mỗi tài khoản

    • Kế hoạch định giá Spark - Hạn ngạch tạo dự án được giới hạn ở số lượng dự án thấp hơn (thường khoảng 5-10).
    • Gói định giá cao ngất ngưởng - Hạn ngạch tạo dự án trên mỗi tài khoản tăng lên đáng kể miễn là tài khoản Cloud Billing được liên kết ở trạng thái tốt.

    Giới hạn về hạn ngạch dự án sáng tạo là hiếm khi một mối quan tâm đối với hầu hết các nhà phát triển, nhưng nếu cần thiết, bạn có thể yêu cầu tăng hạn ngạch dự án .

    Lưu ý rằng việc xóa hoàn toàn dự án cần 30 ngày và được tính vào hạn ngạch dự án cho đến khi dự án bị xóa hoàn toàn.

  • Số lượng ứng dụng cho mỗi dự án

    Firebase giới hạn tổng số Ứng dụng Firebase trong một dự án Firebase ở mức 30.

    Bạn nên đảm bảo rằng tất cả các Ứng dụng Firebase trong một dự án Firebase đều là các biến thể nền tảng của cùng một ứng dụng từ góc độ người dùng cuối. Đọc thêm về thực tiễn tốt nhất cho multi-tenancy dưới đây.

    Tìm hiểu thêm về giới hạn trên các ứng dụng cho mỗi dự án trong FAQ.

  • Số lượng trang web lưu trữ cho mỗi dự án

    Các căn cứ hỏa lực Hosting Tính năng nhiều địa điểm hỗ trợ tối đa 36 trang cho mỗi dự án.

Thuê nhiều kiểu

Không nên kết nối một số ứng dụng và / hoặc trang web độc lập về mặt logic khác nhau với một dự án Firebase (thường được gọi là "nhiều người thuê"). Việc cho thuê nhiều lần có thể dẫn đến các vấn đề nghiêm trọng về cấu hình và quyền riêng tư dữ liệu, bao gồm các vấn đề ngoài ý muốn với tổng hợp phân tích, xác thực được chia sẻ, cấu trúc cơ sở dữ liệu quá phức tạp và khó khăn với các quy tắc bảo mật.

Thông thường, nếu một tập hợp các ứng dụng không chia sẻ dữ liệu và cấu hình tương tự, mạnh mẽ xem xét đăng ký mỗi ứng dụng với một dự án căn cứ hỏa lực khác nhau.

Ví dụ: nếu bạn phát triển một ứng dụng nhãn trắng, mỗi ứng dụng được gắn nhãn độc lập phải có dự án Firebase riêng, nhưng phiên bản iOS và Android của nhãn đó có thể nằm trong cùng một dự án. Mỗi ứng dụng được gắn nhãn độc lập không được (vì lý do bảo mật) chia sẻ dữ liệu với những ứng dụng khác.

Khởi chạy ứng dụng của bạn