Dự án Firebase là thực thể cấp cao nhất của Firebase. Trong một dự án, bạn có thể đăng ký các ứng dụng Apple, Android hoặc web của mình. Sau khi đăng ký ứng dụng của mình với Firebase, bạn có thể thêm SDK Firebase dành riêng cho sản phẩm vào ứng dụng của mình, như Analytics, Cloud Firestore, Crashlytics hoặc Remote Config.
Bạn nên đăng ký các biến thể ứng dụng Apple, Android và ứng dụng web của mình trong một dự án Firebase. Bạn có thể sử dụng nhiều dự án Firebase để hỗ trợ nhiều môi trường, chẳng hạn như phát triển, chạy thử và sản xuất.
Dưới đây là một số tài nguyên để tìm hiểu thêm về các dự án Firebase:
Hiểu các dự án Firebase — cung cấp thông tin tổng quan ngắn gọn về một số khái niệm quan trọng về các dự án Firebase, bao gồm mối quan hệ của chúng với Google Cloud cũng như hệ thống phân cấp cơ bản của dự án cũng như các ứng dụng và tài nguyên của dự án đó.
Các phương pháp chung hay nhất để thiết lập dự án Firebase — cung cấp các phương pháp hay nhất chung, cấp cao để thiết lập dự án Firebase và đăng ký ứng dụng của bạn với một dự án để bạn có quy trình phát triển rõ ràng sử dụng các môi trường riêng biệt.
Lưu ý rằng đối với tất cả các dự án Firebase, Firebase sẽ tự động thêm nhãn firebase:enabled trong trang Nhãn cho dự án của bạn trong Google Cloud Console. Tìm hiểu thêm về nhãn này trong Câu hỏi thường gặp của chúng tôi.
Tổ chức Google Cloud là gì?
Tổ chức Google Cloud là nơi chứa các dự án Google Cloud (bao gồm cả các dự án Firebase). Hệ thống phân cấp này cho phép tổ chức, quản lý quyền truy cập và kiểm tra các dự án Google Cloud và Firebase của bạn tốt hơn. Để biết thêm thông tin, hãy tham khảo Tạo và quản lý tổ chức .
Làm cách nào để thêm Firebase vào dự án Google Cloud hiện có?
Bạn có thể thêm Firebase vào các dự án hiện có này bằng bất kỳ tùy chọn nào sau đây:
Sử dụng bảng điều khiển Firebase: Trong trang đích của bảng điều khiển Firebase , hãy nhấp vào Thêm dự án , sau đó chọn dự án hiện có của bạn từ menu Tên dự án .
Sử dụng tùy chọn có lập trình:
Gọi điểm cuối REST API quản lý Firebase addFirebase .
Tại sao dự án Google Cloud của tôi có nhãn firebase:enabled ?
Trong trang Nhãn cho dự án của bạn trong Google Cloud Console, bạn có thể thấy nhãn firebase:enabled (cụ thể là Key của firebase có Value là enabled ).
Firebase tự động thêm nhãn này vì dự án của bạn là dự án Firebase, điều đó có nghĩa là dự án của bạn đã bật các dịch vụ và cấu hình dành riêng cho Firebase cho dự án đó. Tìm hiểu thêm về mối quan hệ giữa các dự án Firebase và Google Cloud .
Chúng tôi thực sự khuyên bạn không nên sửa đổi hoặc xóa nhãn này. Nhãn này được Firebase và Google Cloud sử dụng để liệt kê các dự án Firebase của bạn (ví dụ: sử dụng điểm cuối projects.list API REST hoặc trong các menu trong bảng điều khiển Firebase).
Xin lưu ý rằng việc thêm nhãn này theo cách thủ công vào danh sách nhãn dự án KHÔNG kích hoạt các dịch vụ và cấu hình dành riêng cho Firebase cho dự án Google Cloud của bạn. Để làm điều đó, bạn cần thêm Firebase thông qua bảng điều khiển Firebase (hoặc đối với các trường hợp sử dụng nâng cao, thông qua API REST quản lý Firebase hoặc Firebase CLI ).
Tại sao dự án Firebase của tôi không hiển thị trong danh sách dự án Firebase của tôi?
Câu hỏi thường gặp này có thể áp dụng nếu bạn không thấy dự án Firebase của mình ở những nơi sau:
Trong danh sách các dự án bạn đang xem trong bảng điều khiển Firebase
Trong phản hồi từ việc chạy lệnh Firebase CLI firebase projects:list
Hãy thử các bước khắc phục sự cố sau:
Trước tiên, hãy thử truy cập dự án của bạn bằng cách truy cập trực tiếp vào URL của dự án. Sử dụng định dạng sau: https://console.firebase.google.com/project/ PROJECT-ID /overview
Nếu bạn không thể truy cập dự án hoặc gặp lỗi về quyền, hãy kiểm tra những điều sau:
Đảm bảo rằng bạn đã đăng nhập vào Firebase bằng cùng một tài khoản Google có quyền truy cập vào dự án. Bạn có thể đăng nhập và đăng xuất khỏi bảng điều khiển Firebase thông qua hình đại diện tài khoản của mình ở góc trên bên phải của bảng điều khiển.
Đảm bảo rằng dự án của bạn có nhãn firebase:enabled trong trang Nhãn cho dự án của bạn trong Google Cloud Console. Firebase và Google Cloud sử dụng nhãn này để liệt kê các dự án Firebase của bạn. Nếu bạn không thấy nhãn này nhưng API quản lý Firebase được bật cho dự án của bạn thì hãy thêm nhãn theo cách thủ công (cụ thể là Key của firebase có Value là enabled ).
Đảm bảo rằng bạn được chỉ định một trong các vai trò IAM cơ bản (Chủ sở hữu, Người chỉnh sửa, Người xem) hoặc một vai trò có các quyền liên quan đến Firebase trong đó, chẳng hạn như vai trò được xác định trước Firebase . Bạn có thể xem (các) vai trò của mình trên trang IAM của Google Cloud Console.
Nếu dự án của bạn thuộc về tổ chức Google Cloud, bạn có thể yêu cầu các quyền bổ sung để xem dự án được liệt kê trong bảng điều khiển Firebase. Hãy liên hệ với người quản lý tổ chức Google Cloud của bạn để được cấp cho bạn vai trò phù hợp để xem dự án, ví dụ như vai trò Trình duyệt.
Nếu không có bước khắc phục sự cố nào ở trên cho phép bạn xem dự án của mình trong danh sách các dự án Firebase, hãy liên hệ với bộ phận Hỗ trợ Firebase .
Tôi có thể có bao nhiêu dự án cho mỗi tài khoản?
Gói định giá Spark — Hạn ngạch dự án của bạn được giới hạn ở một số ít dự án (thường là khoảng 5-10).
Gói giá Blaze — Hạn ngạch dự án trên mỗi tài khoản Thanh toán trên đám mây của bạn tăng đáng kể miễn là tài khoản Thanh toán trên đám mây của bạn ở trạng thái tốt.
Giới hạn về hạn ngạch dự án hiếm khi là mối quan tâm của hầu hết các nhà phát triển, nhưng nếu cần, bạn có thể yêu cầu tăng hạn ngạch dự án của mình .
Lưu ý rằng việc xóa hoàn toàn một dự án cần 30 ngày và được tính vào hạn ngạch của bạn cho đến khi dự án đó bị xóa hoàn toàn.
Tôi có thể có bao nhiêu Ứng dụng Firebase trong dự án Firebase?
Dự án Firebase là nơi chứa các Ứng dụng Firebase trên Apple, Android và web. Firebase giới hạn tổng số Ứng dụng Firebase trong dự án Firebase ở mức 30.
Sau con số này, hiệu suất bắt đầu giảm (đặc biệt đối với Google Analytics) và cuối cùng, ở số lượng ứng dụng cao hơn, một số chức năng của sản phẩm sẽ ngừng hoạt động. Ngoài ra, nếu bạn sử dụng tính năng đăng nhập bằng Google làm nhà cung cấp dịch vụ xác thực thì ID ứng dụng khách OAuth 2.0 cơ bản sẽ được tạo cho từng ứng dụng trong dự án của bạn. Có giới hạn khoảng 30 ID khách hàng có thể được tạo trong một dự án.
Bạn nên đảm bảo rằng tất 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. Ví dụ: nếu bạn phát triển ứ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 Apple và Android của nhãn đó có thể nằm trong cùng một dự án. Đọc thêm hướng dẫn chi tiết về các phương pháp chung hay nhất của chúng tôi để thiết lập dự án Firebase .
Trong trường hợp hiếm hoi, dự án của bạn yêu cầu hơn 30 ứng dụng, bạn có thể yêu cầu tăng giới hạn ứng dụng. Dự án của bạn phải nằm trong gói định giá Blaze để thực hiện yêu cầu này. Hãy truy cập Google Cloud Console để đưa ra yêu cầu của bạn và đánh giá yêu cầu đó. Tìm hiểu thêm về quản lý hạn ngạch trong tài liệu Google Cloud.
Điều gì xảy ra nếu tôi gắn thẻ dự án của mình là môi trường "sản xuất"?
Trong bảng điều khiển Firebase, bạn có thể gắn thẻ các dự án Firebase của mình với loại môi trường của chúng, dưới dạng môi trường Sản xuất hoặc Không xác định (không phải sản phẩm).
Việc gắn thẻ dự án của bạn dưới dạng loại môi trường không ảnh hưởng đến cách hoạt động của dự án Firebase hoặc các tính năng của dự án đó. Tuy nhiên, việc gắn thẻ có thể giúp bạn và nhóm của bạn quản lý các dự án Firebase khác nhau trong vòng đời ứng dụng.
Nếu bạn gắn thẻ dự án của mình dưới dạng môi trường sản xuất, chúng tôi sẽ thêm thẻ Prod có màu sắc rực rỡ vào dự án trong bảng điều khiển Firebase, nhắc nhở bạn rằng mọi thay đổi đều có thể ảnh hưởng đến các ứng dụng sản xuất được liên kết của bạn. Trong tương lai, chúng tôi có thể bổ sung thêm nhiều tính năng và biện pháp bảo vệ cho các dự án Firebase được gắn thẻ là môi trường sản xuất.
Để thay đổi loại môi trường của dự án Firebase của bạn, hãy đi tới settingsCài đặt dự án > Chung , sau đó trong thẻ Dự án của bạn trong Môi trường , hãy nhấp vào edit để thay đổi loại môi trường.
Tôi có thể tìm ID ứng dụng cho ứng dụng Firebase của mình ở đâu?
Trong bảng điều khiển Firebase, hãy chuyển đến settings của bạn Project settings . Cuộn xuống thẻ Ứng dụng của bạn , sau đó nhấp vào Ứng dụng Firebase mong muốn để xem thông tin của ứng dụng, bao gồm cả ID ứng dụng của ứng dụng đó.
Dưới đây là một số giá trị ID ứng dụng mẫu:
Ứng dụng Firebase iOS: 1:1234567890:ios:321abc456def7890
Ứng dụng Android Firebase: 1:1234567890:android:321abc456def7890
Ứng dụng web Firebase: 1:1234567890:web:321abc456def7890
Điều kiện tiên quyết để liên kết Google Play/AdMob/Google Ads/BigQuery với dự án hoặc ứng dụng Firebase của tôi là gì?
Một trong các vai trò Firebase sau: Chủ sở hữu hoặc Quản trị viên Firebase Và
Một trong các cấp truy cập Google Play sau: Chủ sở hữu tài khoản hoặc Quản trị viên
Để liên kết ứng dụng AdMob của bạn , bạn cần vừa là chủ sở hữu dự án Firebase vừa là quản trị viên AdMob.
Để liên kết tài khoản AdWords của bạn , bạn cần vừa là chủ sở hữu dự án Firebase vừa là quản trị viên AdWords.
Để liên kết dự án BigQuery của bạn, bạn cần phải là chủ sở hữu dự án Firebase.
Tôi nên đưa những thông báo nguồn mở nào vào ứng dụng của mình?
Trên nền tảng Apple, nhóm Firebase chứa tệp THÔNG BÁO bao gồm các mục nhập có liên quan. SDK Android Firebase chứa Activity trợ giúp để hiển thị thông tin giấy phép.
Quyền và quyền truy cập vào các dự án Firebase
Làm cách nào để chỉ định một vai trò cho thành viên dự án, chẳng hạn như vai trò Chủ sở hữu?
Để quản lý (các) vai trò được chỉ định cho từng thành viên dự án, bạn phải là Chủ sở hữu của dự án Firebase (hoặc được chỉ định một vai trò với quyền resourcemanager.projects.setIamPolicy ).
Dưới đây là những nơi bạn có thể chỉ định và quản lý vai trò:
Google Cloud Console cung cấp một bộ công cụ mở rộng để phân công vai trò cho các thành viên dự án trên trang IAM . Trong Cloud Console, bạn cũng có thể tạo và quản lý các vai trò tùy chỉnh cũng như cấp cho các tài khoản dịch vụ quyền truy cập vào dự án của mình.
Lưu ý rằng trong Google Cloud Console, các thành viên dự án được gọi là hiệu trưởng .
Nếu Chủ sở hữu dự án của bạn không còn có thể thực hiện các nhiệm vụ của Chủ sở hữu (ví dụ: người đã rời công ty của bạn) và dự án của bạn không được quản lý thông qua tổ chức Google Cloud (xem đoạn tiếp theo), bạn có thể liên hệ với Bộ phận hỗ trợ của Firebase để được yêu cầu một Chủ sở hữu tạm thời được chỉ định.
Lưu ý rằng nếu dự án Firebase là một phần của tổ chức Google Cloud thì dự án đó có thể không có Chủ sở hữu. Nếu bạn không thể tìm thấy Chủ sở hữu cho dự án Firebase của mình, hãy liên hệ với người quản lý tổ chức Google Cloud của bạn để chỉ định Chủ sở hữu cho dự án.
Làm cách nào để tìm Chủ sở hữu dự án Firebase?
Bạn có thể xem các thành viên dự án và vai trò của họ ở những nơi sau:
Nếu có quyền truy cập vào dự án trong bảng điều khiển Firebase, bạn có thể xem danh sách thành viên dự án, bao gồm cả Chủ sở hữu, trong trang Người dùng và quyền của bảng điều khiển Firebase.
Nếu bạn không có quyền truy cập vào dự án trong bảng điều khiển Firebase, hãy kiểm tra xem bạn có quyền truy cập vào dự án trong Google Cloud Console hay không. Bạn có thể xem danh sách thành viên dự án, bao gồm cả Chủ sở hữu, trên trang IAM của Google Cloud Console.
Nếu Chủ sở hữu dự án của bạn không còn có thể thực hiện các nhiệm vụ của Chủ sở hữu (ví dụ: người đã rời công ty của bạn) và dự án của bạn không được quản lý thông qua tổ chức Google Cloud (xem đoạn tiếp theo), bạn có thể liên hệ với Bộ phận hỗ trợ của Firebase để được yêu cầu một Chủ sở hữu tạm thời được chỉ định.
Lưu ý rằng nếu dự án Firebase là một phần của tổ chức Google Cloud thì dự án đó có thể không có Chủ sở hữu. Thay vào đó, người quản lý tổ chức Google Cloud của bạn có thể thực hiện nhiều nhiệm vụ mà Chủ sở hữu có thể thực hiện. Tuy nhiên, để thực hiện một số nhiệm vụ dành riêng cho Chủ sở hữu (như chỉ định vai trò hoặc quản lý thuộc tính Google Analytics), quản trị viên có thể cần phải tự chỉ định vai trò Chủ sở hữu thực tế để thực hiện các nhiệm vụ đó. Nếu bạn không thể tìm thấy Chủ sở hữu cho dự án Firebase của mình, hãy liên hệ với người quản lý tổ chức Google Cloud của bạn để chỉ định Chủ sở hữu cho dự án.
Tại sao hoặc khi nào tôi nên chỉ định vai trò Chủ sở hữu cho một thành viên dự án?
Để đảm bảo quản lý dự án Firebase đúng cách, dự án đó phải có Chủ sở hữu . Chủ sở hữu dự án là người có thể thực hiện một số hành động quản trị quan trọng (như chỉ định vai trò và quản lý thuộc tính Google Analytics) và Bộ phận hỗ trợ Firebase chỉ có thể thực hiện các yêu cầu quản trị từ Chủ sở hữu dự án đã được chứng minh.
Sau khi bạn thiết lập (các) Chủ sở hữu cho dự án Firebase, điều quan trọng là phải luôn cập nhật các nhiệm vụ đó.
Lưu ý rằng nếu dự án Firebase là một phần của tổ chức Google Cloud thì người quản lý tổ chức Google Cloud của bạn có thể thực hiện nhiều nhiệm vụ mà Chủ sở hữu có thể làm. Tuy nhiên, đối với một số nhiệm vụ dành riêng cho Chủ sở hữu (như chỉ định vai trò hoặc quản lý thuộc tính Google Analytics), quản trị viên có thể cần tự chỉ định vai trò Chủ sở hữu thực tế để thực hiện các nhiệm vụ đó.
Tôi không nghĩ rằng mình có dự án Firebase nhưng tôi đã nhận được email về một dự án. Làm cách nào để truy cập dự án này?
Email bạn nhận được phải chứa liên kết để mở dự án Firebase của bạn. Nhấp vào liên kết trong email sẽ mở dự án trong bảng điều khiển Firebase.
Nếu bạn không thể mở dự án trong liên kết, hãy đảm bảo rằng bạn đã đăng nhập vào Firebase bằng chính tài khoản Google đã nhận được email về dự án. Bạn có thể đăng nhập và đăng xuất khỏi bảng điều khiển Firebase thông qua hình đại diện tài khoản của mình ở góc trên bên phải của bảng điều khiển.
Xin lưu ý rằng nếu là quản trị viên của tổ chức Google Cloud, bạn có thể được thông báo về những thay đổi đối với các dự án Firebase trong tổ chức của mình. Tuy nhiên, bạn có thể không có đủ quyền để mở dự án Firebase. Trong những trường hợp này, giải pháp đơn giản nhất là tự gán cho mình vai trò Chủ sở hữu thực tế để mở dự án và thực hiện các hành động được yêu cầu. Tìm hiểu thêm về lý do và thời điểm chỉ định vai trò Chủ sở hữu .
Nền tảng và khuôn khổ
Truy cập trang Câu hỏi thường gặp và khắc phục sự cố dành riêng cho nền tảng để biết các mẹo và câu trả lời hữu ích để biết thêm Câu hỏi thường gặp.
Các trình duyệt được hỗ trợ để truy cập bảng điều khiển Firebase là gì?
Bảng điều khiển Firebase có thể được truy cập từ các phiên bản gần đây của các trình duyệt máy tính để bàn phổ biến như Chrome, Firefox, Safari và Edge. Trình duyệt di động hiện không được hỗ trợ đầy đủ.
Tôi có thể tải bảng điều khiển Firebase nhưng tại sao tôi không thể tìm hoặc truy cập dự án Firebase của mình?
Câu hỏi thường gặp này có thể áp dụng nếu bạn gặp phải một trong những vấn đề sau:
Bảng điều khiển Firebase trả về trang lỗi cho biết dự án của bạn có thể không tồn tại hoặc bạn không có quyền truy cập vào dự án.
Bảng điều khiển Firebase không hiển thị dự án của bạn ngay cả khi bạn nhập ID dự án hoặc tên dự án vào trường tìm kiếm của bảng điều khiển.
Hãy thử các bước khắc phục sự cố sau:
Trước tiên, hãy thử truy cập dự án của bạn bằng cách truy cập trực tiếp vào URL của dự án. Sử dụng định dạng sau: https://console.firebase.google.com/project/ PROJECT-ID /overview
Nếu bạn vẫn không thể truy cập dự án hoặc gặp lỗi về quyền, hãy kiểm tra những điều sau:
Đảm bảo rằng bạn đã đăng nhập vào Firebase bằng cùng một tài khoản Google có quyền truy cập vào dự án. Bạn có thể đăng nhập và đăng xuất khỏi bảng điều khiển Firebase thông qua hình đại diện tài khoản của mình ở góc trên bên phải của bảng điều khiển.
Đảm bảo rằng bạn được chỉ định một trong các vai trò IAM cơ bản (Chủ sở hữu, Người chỉnh sửa, Người xem) hoặc một vai trò có các quyền liên quan đến Firebase trong đó, chẳng hạn như vai trò được xác định trước Firebase . Bạn có thể xem (các) vai trò của mình trên trang IAM của Google Cloud Console.
Nếu dự án của bạn thuộc về tổ chức Google Cloud, bạn có thể yêu cầu các quyền bổ sung để xem dự án được liệt kê trong bảng điều khiển Firebase. Hãy liên hệ với người quản lý tổ chức Google Cloud của bạn để được cấp cho bạn vai trò phù hợp để xem dự án, ví dụ như vai trò Trình duyệt.
Nếu không có bước khắc phục sự cố nào ở trên cho phép bạn tìm hoặc truy cập dự án của mình, hãy liên hệ với bộ phận Hỗ trợ Firebase .
Tại sao bảng điều khiển Firebase không tải cho tôi?
Câu hỏi thường gặp này có thể áp dụng nếu bạn gặp phải bất kỳ vấn đề nào sau đây:
Một trang trong bảng điều khiển Firebase không bao giờ tải xong.
Dữ liệu trong một trang không tải như mong đợi.
Bạn nhận được thông báo lỗi trình duyệt khi tải bảng điều khiển Firebase.
Bảng điều khiển Firebase hỗ trợ những vai trò và quyền nào?
Bảng điều khiển Firebase và Google Cloud Console sử dụng các vai trò và quyền cơ bản giống nhau. Tìm hiểu thêm về vai trò và quyền trong tài liệu Firebase IAM .
Chủ sở hữu dự án có thể thêm các thành viên khác vào dự án, thiết lập tiện ích tích hợp (liên kết dự án với các dịch vụ như BigQuery hoặc Slack) và có toàn quyền truy cập chỉnh sửa cho dự án.
Người chỉnh sửa dự án có toàn quyền truy cập chỉnh sửa dự án.
Người xem dự án chỉ có quyền truy cập đọc cho dự án. Lưu ý rằng bảng điều khiển Firebase hiện không ẩn/tắt các điều khiển chỉnh sửa giao diện người dùng khỏi Người xem dự án, nhưng các thao tác này sẽ không thành công đối với các thành viên dự án được chỉ định vai trò Người xem.
Firebase cũng hỗ trợ:
Vai trò được xác định trước của Firebase — Các vai trò dành riêng cho Firebase được quản lý cho phép kiểm soát quyền truy cập chi tiết hơn so với các vai trò cơ bản là Chủ sở hữu, Người chỉnh sửa và Người xem.
Vai trò tùy chỉnh — Vai trò IAM được tùy chỉnh hoàn toàn mà bạn tạo để điều chỉnh bộ quyền đáp ứng các yêu cầu cụ thể của tổ chức của bạn.
Định giá
Những sản phẩm nào được thanh toán? Cái nào là miễn phí?
Các sản phẩm cơ sở hạ tầng trả phí của Firebase là Cơ sở dữ liệu thời gian thực, Bộ lưu trữ đám mây cho Firebase, Chức năng đám mây, Dịch vụ lưu trữ, Phòng thử nghiệm và xác thực điện thoại. Chúng tôi cung cấp cấp độ miễn phí cho tất cả các tính năng này.
Firebase cũng có nhiều sản phẩm miễn phí: Phân tích, Nhắn tin qua đám mây, trình soạn thảo Thông báo, Cấu hình từ xa, Lập chỉ mục ứng dụng, Liên kết động và Báo cáo sự cố. Bạn có thể sử dụng số lượng không giới hạn của bất kỳ sản phẩm nào trong số này trong tất cả các gói, bao gồm cả gói Spark miễn phí của chúng tôi. Ngoài ra, tất cả các tính năng Xác thực ngoài xác thực qua điện thoại đều miễn phí.
Firebase có cung cấp tín dụng dùng thử miễn phí cho các sản phẩm phải trả phí không?
Bạn có thể sử dụng các dịch vụ trả phí của Firebase theo Bản dùng thử miễn phí của Google Cloud . Người dùng Google Cloud và Firebase mới có thể tận dụng thời gian dùng thử 90 ngày bao gồm 300 USD tín dụng Thanh toán trên đám mây miễn phí để khám phá và đánh giá các sản phẩm cũng như dịch vụ của Google Cloud và Firebase.
Trong thời gian dùng thử miễn phí Google Cloud, bạn sẽ được cung cấp tài khoản Thanh toán trên đám mây dùng thử miễn phí. Bất kỳ dự án Firebase nào sử dụng tài khoản thanh toán đó sẽ nằm trong gói định giá Blaze trong thời gian dùng thử miễn phí.
Đừng lo lắng, việc thiết lập tài khoản Thanh toán trên nền tảng đám mây dùng thử miễn phí này không cho phép chúng tôi tính phí cho bạn. Bạn không bị tính phí trừ khi bạn bật tính năng thanh toán một cách rõ ràng bằng cách nâng cấp tài khoản Thanh toán qua đám mây dùng thử miễn phí lên tài khoản trả phí. Bạn có thể nâng cấp lên tài khoản trả phí bất kỳ lúc nào trong thời gian dùng thử. Sau khi nâng cấp, bạn vẫn có thể sử dụng mọi khoản tín dụng còn lại (trong thời hạn 90 ngày).
Sau khi hết thời gian dùng thử miễn phí, bạn sẽ cần hạ cấp dự án của mình xuống gói giá Spark hoặc thiết lập gói giá Blaze trong bảng điều khiển Firebase để tiếp tục sử dụng dự án Firebase của mình.
Gói Spark của chúng tôi là nơi tuyệt vời để phát triển ứng dụng của bạn miễn phí. Bạn nhận được tất cả các tính năng Firebase miễn phí (Analytics, trình soạn thảo Thông báo, Crashlytics, v.v.) và rất nhiều tính năng cơ sở hạ tầng trả phí của chúng tôi. Tuy nhiên, nếu bạn vượt quá tài nguyên gói Spark trong một tháng dương lịch, ứng dụng của bạn sẽ bị tắt trong thời gian còn lại của tháng đó. Ngoài ra, các tính năng của Google Cloud không khả dụng khi sử dụng gói Spark.
Kế hoạch định giá Blaze
Gói Blaze của chúng tôi được thiết kế cho các ứng dụng sản xuất. Gói Blaze cũng cho phép bạn mở rộng ứng dụng của mình bằng các tính năng trả phí của Google Cloud. Bạn chỉ trả tiền cho những tài nguyên bạn sử dụng, cho phép bạn mở rộng quy mô theo nhu cầu. Chúng tôi cố gắng làm cho giá gói Blaze của mình cạnh tranh với các nhà cung cấp đám mây hàng đầu trong ngành.
Làm cách nào tôi có thể theo dõi việc sử dụng và thanh toán của mình?
Bạn có thể theo dõi việc sử dụng tài nguyên dự án của mình trong bảng điều khiển Firebase trên bất kỳ trang tổng quan nào sau đây:
Vào tháng 1 năm 2020, gói định giá Flame ($25/tháng trong hạn ngạch bổ sung) đã bị xóa dưới dạng tùy chọn cho những người đăng ký mới. Người dùng gói hiện tại được cấp thời gian gia hạn để di chuyển dự án của họ ra khỏi gói Flame. Vào tháng 2 năm 2022, các dự án còn lại trong gói định giá Flame đã bị hạ cấp xuống gói định giá Spark. Theo đó,
Các dự án gói Spark và Blaze hiện tại cũng như mọi dự án mới không thể chuyển sang hoặc đăng ký gói Flame nữa.
Nếu bạn chuyển dự án gói Flame hiện tại sang gói định giá khác, thì dự án đó không thể quay lại gói Flame.
Các dự án bị hạ cấp xuống gói Spark có thể được nâng cấp lên gói Blaze để tiếp tục các dịch vụ trả phí bổ sung.
Các tham chiếu đến kế hoạch Flame đã bị xóa khỏi tài liệu.
Bạn có thêm câu hỏi về việc nghỉ hưu kế hoạch Flame không? Đọc một số câu hỏi thường gặp bổ sung bên dưới.
Bạn muốn tìm hiểu về các gói giá khác do Firebase cung cấp? Truy cập trang định giá Firebase của chúng tôi! Nếu muốn bắt đầu chuyển bất kỳ dự án hiện có nào sang gói giá khác, bạn có thể thực hiện việc đó trong bảng điều khiển Firebase cho dự án của mình.
Câu hỏi thường gặp bổ sung về việc ngừng sử dụng gói Flame
Tôi có một dự án, một quy trình hoặc một mô hình kinh doanh dựa trên chi phí Firebase cố định. Tôi nên làm gì?
Tôi có thể được cấp quyền truy cập đặc biệt để tạo các dự án kế hoạch Flame mới không?
Không, Firebase không cung cấp quyền truy cập đặc biệt cho các dự án để chuyển sang hoặc đăng ký gói Flame.
Tôi đã thay đổi dự án gói Flame của mình sang một gói định giá khác. Làm thế nào để tôi thay đổi nó trở lại?
Không thể chuyển sang gói Flame nữa. Để truy cập vào các dịch vụ do gói Flame cung cấp, hãy đảm bảo rằng bạn đang sử dụng gói giá Blaze và cân nhắc việc thiết lập cảnh báo ngân sách cho dự án của mình.
Dự án của tôi đã tự động được chuyển sang gói giá khác khi ngừng sử dụng gói Flame. Tôi nên làm gì?
Nếu dự án của bạn yêu cầu hạn ngạch bổ sung ngoài hạn ngạch được cung cấp trong gói Spark, bạn sẽ cần nâng cấp dự án của mình lên gói định giá Blaze.
Tại sao kế hoạch Flame bị ngừng hoạt động?
Trong những năm qua, chúng tôi nhận thấy việc sử dụng gói Flame ngày càng giảm và hầu hết các dự án sử dụng gói này đều không sử dụng hết giá trị của nó. Việc duy trì gói giá này thường không hiệu quả về mặt chi phí và chúng tôi cảm thấy rằng mình có thể phục vụ mọi người tốt hơn nếu nguồn lực được dành cho các sáng kiến Firebase khác.
Mức sử dụng miễn phí trong gói Blaze khác với mức sử dụng miễn phí trong gói Spark như thế nào?
Việc sử dụng miễn phí gói Blaze được tính hàng ngày. Giới hạn sử dụng cũng khác với gói Spark dành cho Chức năng đám mây, xác thực điện thoại và Test Lab.
Đối với Chức năng đám mây, mức sử dụng miễn phí trên gói Blaze được tính ở cấp tài khoản Thanh toán trên đám mây, không phải cấp dự án và có các giới hạn sau:
2 triệu lệnh gọi/tháng
400K GB-giây/tháng
200K CPU-giây/tháng
5 GB dung lượng mạng/tháng
Để xác thực qua điện thoại, mức sử dụng miễn phí trên gói Blaze được tính hàng tháng.
Đối với Test Lab, việc sử dụng miễn phí gói Blaze có các giới hạn sau:
30 phút thiết bị vật lý/ngày
60 phút thiết bị ảo/ngày
Hạn ngạch sử dụng miễn phí có được đặt lại khi tôi thay đổi từ gói Spark sang gói Blaze không?
Việc sử dụng miễn phí gói Spark được bao gồm trong gói Blaze. Việc sử dụng miễn phí không được đặt lại khi chuyển sang gói Blaze.
"Kết nối cơ sở dữ liệu đồng thời" là gì?
Kết nối đồng thời tương đương với một thiết bị di động, tab trình duyệt hoặc ứng dụng máy chủ được kết nối với cơ sở dữ liệu. Firebase áp đặt giới hạn cứng về số lượng kết nối đồng thời tới cơ sở dữ liệu ứng dụng của bạn. Những giới hạn này được áp dụng để bảo vệ cả Firebase và người dùng của chúng tôi khỏi bị lạm dụng.
Giới hạn gói Spark là 100 và không thể tăng lên. Các gói Flame và Blaze có giới hạn 200.000 kết nối đồng thời trên mỗi cơ sở dữ liệu.
Giới hạn này không giống với tổng số người dùng ứng dụng của bạn vì tất cả người dùng của bạn không kết nối cùng một lúc. Nếu bạn cần hơn 200.000 kết nối đồng thời, vui lòng đọc Quy mô với nhiều cơ sở dữ liệu .
Điều gì xảy ra nếu tôi vượt quá giới hạn lưu trữ hoặc tải xuống của gói Spark cho Cơ sở dữ liệu thời gian thực?
Để cung cấp cho bạn mức giá có thể dự đoán được, các tài nguyên có sẵn cho bạn trong gói Spark sẽ bị giới hạn. Điều này có nghĩa là khi bạn vượt quá bất kỳ giới hạn gói nào trong bất kỳ tháng nào, ứng dụng của bạn sẽ bị tắt để ngăn chặn việc sử dụng thêm tài nguyên và các khoản phí bổ sung.
Điều gì xảy ra nếu tôi vượt quá giới hạn kết nối đồng thời của gói Spark cho Cơ sở dữ liệu thời gian thực?
Khi ứng dụng của bạn đạt đến giới hạn đồng thời trên gói Spark, mọi kết nối tiếp theo sẽ bị từ chối cho đến khi một số kết nối hiện có bị đóng. Ứng dụng sẽ tiếp tục hoạt động đối với người dùng được kết nối.
Việc tích hợp Firebase với Google Cloud hoạt động như thế nào?
Firebase được tích hợp sâu với Google Cloud . Các dự án được chia sẻ giữa Firebase và Google Cloud, vì vậy các dự án có thể bật dịch vụ Firebase và dịch vụ Google Cloud. Bạn có thể truy cập cùng một dự án từ bảng điều khiển Firebase hoặc Google Cloud Console. Đặc biệt:
Một số sản phẩm Firebase nhất định được Google Cloud hỗ trợ trực tiếp, chẳng hạn như Cloud Storage cho Firebase. Danh sách các sản phẩm được Google Cloud hỗ trợ sẽ tiếp tục tăng theo thời gian.
Nhiều cài đặt của bạn, bao gồm cả cộng tác viên và thông tin thanh toán, được chia sẻ bởi Firebase và Google Cloud. Việc sử dụng cả Firebase và Google Cloud của bạn sẽ xuất hiện trên cùng một hóa đơn.
Ngoài ra, khi nâng cấp lên gói Blaze, bạn có thể sử dụng bất kỳ API và Cơ sở hạ tầng dưới dạng dịch vụ đẳng cấp thế giới nào của Google Cloud ngay trong dự án Firebase của mình, với mức giá Google Cloud tiêu chuẩn. Bạn cũng có thể xuất dữ liệu trực tiếp từ Google Cloud sang BigQuery để phân tích. Để tìm hiểu thêm, hãy xem Liên kết BigQuery với Firebase.
Có nhiều lợi ích về tăng cường bảo mật, cải thiện độ trễ và tiết kiệm thời gian khi sử dụng Google Cloud với Firebase (so với các dịch vụ đám mây khác không nằm cùng vị trí). Hãy xem trang web Google Cloud để biết thêm chi tiết.
Điều gì xảy ra với dự án Firebase của tôi nếu tôi thêm hoặc xóa tài khoản thanh toán cho dự án đó trong Google Cloud Console?
Nếu tài khoản Cloud Billing được thêm vào một dự án trong Google Cloud Console, thì dự án tương tự sẽ tự động được nâng cấp lên gói Firebase Blaze nếu dự án đó hiện nằm trong gói Spark.
Ngược lại, nếu một tài khoản Cloud Billing đang hoạt động bị xóa khỏi một dự án trong Google Cloud Console thì dự án đó sẽ bị hạ cấp xuống gói Firebase Spark.
Tôi có thể nâng cấp, hạ cấp hoặc hủy bất kỳ lúc nào không?
Có, bạn có thể nâng cấp, hạ cấp hoặc hủy bất kỳ lúc nào. Lưu ý rằng chúng tôi không hoàn lại tiền theo tỷ lệ cho việc hạ cấp hoặc hủy bỏ. Điều này có nghĩa là nếu bạn hạ cấp hoặc hủy trước khi kết thúc thời hạn thanh toán, bạn vẫn phải thanh toán cho thời gian còn lại của tháng.
Tôi sẽ nhận được loại hỗ trợ nào?
Tất cả các ứng dụng Firebase, bao gồm cả những ứng dụng sử dụng gói miễn phí, đều nhận được hỗ trợ qua email từ nhân viên Firebase trong giờ làm việc của Hoa Kỳ tại Thái Bình Dương. Tất cả các tài khoản đều được hỗ trợ không giới hạn cho các vấn đề liên quan đến thanh toán, các vấn đề liên quan đến tài khoản, câu hỏi kỹ thuật (khắc phục sự cố) và báo cáo sự cố.
Tôi có thể giới hạn mức sử dụng gói Blaze không?
Không, hiện tại bạn không thể giới hạn mức sử dụng gói Blaze của mình. Chúng tôi đang đánh giá các tùy chọn để hỗ trợ giới hạn sử dụng gói Blaze.
Người dùng Blaze có thể xác định ngân sách cho dự án hoặc tài khoản của họ và nhận thông báo khi chi tiêu của họ đạt đến giới hạn đó. Tìm hiểu cách thiết lập cảnh báo ngân sách .
Sao lưu tự động là gì? Bạn có cung cấp bản sao lưu hàng giờ không?
Sao lưu tự động là một tính năng nâng cao dành cho khách hàng trong gói giá Blaze của chúng tôi. Tính năng này sao lưu dữ liệu Cơ sở dữ liệu thời gian thực Firebase của bạn mỗi ngày một lần và tải dữ liệu đó lên Google Cloud Storage .
Chúng tôi không cung cấp bản sao lưu hàng giờ.
Bạn có cung cấp giảm giá nguồn mở, phi lợi nhuận hoặc giáo dục không?
Bất kỳ loại cá nhân hoặc tổ chức nào cũng có thể sử dụng gói Spark của chúng tôi, bao gồm các tổ chức phi lợi nhuận, trường học và các dự án nguồn mở. Vì các gói này đã bao gồm hạn ngạch hào phóng nên chúng tôi không đưa ra bất kỳ khoản giảm giá hoặc gói đặc biệt nào cho các dự án nguồn mở, phi lợi nhuận hoặc giáo dục.
Bạn có cung cấp hợp đồng doanh nghiệp, giá cả, hỗ trợ hoặc lưu trữ cơ sở hạ tầng chuyên dụng không?
Kế hoạch Blaze của chúng tôi phù hợp cho các doanh nghiệp thuộc mọi quy mô và SLA của chúng tôi đáp ứng hoặc vượt quá tiêu chuẩn công nghiệp cho cơ sở hạ tầng đám mây. Tuy nhiên, chúng tôi hiện không cung cấp hợp đồng doanh nghiệp, giá cả hoặc hỗ trợ, cũng như chúng tôi không cung cấp lưu trữ cơ sở hạ tầng chuyên dụng (nghĩa là cài đặt tại chỗ) cho các dịch vụ như cơ sở dữ liệu thời gian thực của chúng tôi. Chúng tôi rất chăm chỉ làm việc thêm một số tính năng này.
Bạn có cung cấp giá ad-hoc không? Tôi chỉ muốn trả tiền cho một hoặc hai tính năng.
Chúng tôi cung cấp giá ad-hoc trong Kế hoạch Blaze, nơi bạn chỉ trả tiền cho các tính năng bạn sử dụng.
Làm thế nào để các kế hoạch firebase trả phí hoạt động với quảng cáo? Có tín dụng quảng cáo không có chi phí với các kế hoạch được trả tiền không?
Các kế hoạch định giá Firebase tách biệt với quảng cáo, vì vậy không có tín dụng quảng cáo nào không có chi phí. Là nhà phát triển Firebase, bạn có thể "liên kết" tài khoản quảng cáo của mình với Firebase để hỗ trợ theo dõi chuyển đổi.
Tất cả các chiến dịch ADS được quản lý trực tiếp trong ADS và thanh toán ADS được quản lý từ bảng điều khiển ADS.
Đám mây định giá
Tại sao tôi cần một tài khoản thanh toán để sử dụng các chức năng đám mây cho Firebase?
Các chức năng đám mây cho Firebase phụ thuộc vào một số dịch vụ của Google. Triển khai chức năng mới với Firebase CLI 11.2.0 và cao hơn dựa vào cơ quan đăng ký xây dựng và tạo tác của đám mây. Việc triển khai cho các phiên bản cũ hơn sử dụng bản dựng đám mây theo cùng một cách, nhưng dựa vào đăng ký container và lưu trữ đám mây để lưu trữ thay vì đăng ký tạo tác. Việc sử dụng các dịch vụ này sẽ được lập hóa đơn ngoài giá hiện có.
Không gian lưu trữ cho Firebase CLI 11.2.0 và các phiên bản mới hơn
Sổ đăng ký Artifact cung cấp các container trong đó các chức năng chạy. Sổ đăng ký Artifact cung cấp 500MB đầu tiên miễn phí, vì vậy việc triển khai chức năng đầu tiên của bạn có thể không phải chịu bất kỳ khoản phí nào. Trên ngưỡng đó, mỗi GB lưu trữ bổ sung được lập hóa đơn ở mức 0,10 đô la mỗi tháng.
Không gian lưu trữ cho Firebase CLI 11.1.x và các phiên bản trước
Đối với các chức năng được triển khai cho các phiên bản cũ hơn, Sổ đăng ký container , cung cấp các container trong đó các chức năng chạy. Bạn sẽ được lập hóa đơn cho mỗi container cần thiết để triển khai một chức năng. Ví dụ, bạn có thể nhận thấy các khoản phí nhỏ cho mỗi container được lưu trữ, ví dụ, 1GB dung lượng lưu trữ được lập hóa đơn ở mức 0,026 đô la mỗi tháng .
Để hiểu thêm về cách hóa đơn của bạn có thể thay đổi, vui lòng xem lại những điều sau
Các chức năng đám mây cho Firebase vẫn còn sử dụng chi phí?
Đúng. Trên kế hoạch Blaze, các chức năng đám mây cung cấp một tầng miễn phí cho các cuộc gọi, thời gian tính toán và lưu lượng truy cập Internet. 2.000.000 người đầu tiên, 400.000 GB-SEC, 200.000 CPU-SEC và 5 GB lưu lượng truy cập internet được cung cấp miễn phí mỗi tháng. Bạn sẽ chỉ bị tính phí để sử dụng trên các ngưỡng đó.
Sau 500MB đầu tiên của lưu trữ miễn phí, mỗi hoạt động triển khai sẽ phải chịu các khoản phí quy mô nhỏ cho không gian lưu trữ được sử dụng cho thùng chứa của chức năng. Nếu quá trình phát triển của bạn phụ thuộc vào việc triển khai các chức năng để thử nghiệm, bạn có thể giảm thiểu chi phí bằng cách sử dụng bộ Trình giả lập cục bộ Firebase trong quá trình phát triển.
Có phải Firebase có kế hoạch nâng cao hạn ngạch và giới hạn cho các chức năng đám mây cho Firebase không?
Không. Không có kế hoạch thay đổi hạn ngạch ngoại trừ việc loại bỏ giới hạn thời gian xây dựng tối đa; Thay vì nhận lỗi hoặc cảnh báo khi đạt được hạn ngạch xây dựng hàng ngày là 120 phút, bạn sẽ được lập hóa đơn theo các điều khoản của kế hoạch định giá ngọn lửa. Xem hạn ngạch và giới hạn .
Tôi có thể nhận được khoản tín dụng $ 300 của Google Cloud không?
Có, bạn có thể tạo một tài khoản thanh toán đám mây trong bảng điều khiển Google Cloud để nhận khoản tín dụng $ 300, sau đó liên kết tài khoản thanh toán đám mây đó với dự án Firebase.
Lưu ý rằng nếu bạn làm điều này, sau đó bạn phải thiết lập kế hoạch định giá Blaze trong bảng điều khiển Firebase để dự án của bạn tiếp tục làm việc sau khi tín dụng $ 300 đã cạn kiệt.
Tôi muốn theo dõi một codelab để tìm hiểu về firebase. Bạn có thể cho tôi một tài khoản thanh toán tạm thời?
Không xin lỗi. Bạn có thể sử dụng trình giả lập Firebase để phát triển mà không có tài khoản thanh toán đám mây. Ngoài ra, hãy thử đăng ký dùng thử miễn phí Google Cloud . Nếu bạn vẫn gặp khó khăn trong việc thanh toán hóa đơn vì sự thay đổi này, hãy liên hệ với hỗ trợ Firebase.
Tôi lo lắng rằng tôi sẽ đạt được một hóa đơn lớn.
Bạn có thể thiết lập các cảnh báo ngân sách trong bảng điều khiển Google Cloud để giúp kiểm soát chi phí. Ngoài ra, bạn có thể đặt giới hạn về số lượng các trường hợp được lập hóa đơn được tạo cho mỗi chức năng của bạn. Để có được một ý tưởng về chi phí cho các tình huống điển hình, hãy xem các ví dụ về các chức năng đám mây .
Làm thế nào tôi có thể kiểm tra các khoản phí thanh toán hiện tại của tôi?
Để sử dụng các tiện ích mở rộng, bạn sẽ cần nâng cấp lên kế hoạch định giá ngọn lửa. Bạn sẽ bị tính phí một số tiền nhỏ (thường là khoảng 0,01 đô la mỗi tháng cho các tài nguyên Firebase được yêu cầu bởi mỗi tiện ích mở rộng bạn cài đặt (ngay cả khi chúng không được sử dụng), ngoài bất kỳ khoản phí nào liên quan đến việc bạn sử dụng dịch vụ Firebase.
Lưu trữ đám mây cho giá Firebase
Làm thế nào để tôi dự đoán tôi sẽ được lập hóa đơn bao nhiêu để tải lên và tải xuống các hoạt động?
Truy cập trang giá Firebase và sử dụng máy tính Blaze Plan . Máy tính liệt kê tất cả các loại sử dụng để lưu trữ đám mây cho Firebase.
Sử dụng các thanh trượt để nhập cách sử dụng dự kiến của thùng lưu trữ của bạn. Máy tính sẽ ước tính hóa đơn hàng tháng của bạn.
Điều gì xảy ra nếu tôi vượt quá giới hạn tải lên kế hoạch, tải xuống hoặc lưu trữ cho lưu trữ đám mây cho Firebase?
Khi bạn vượt quá giới hạn cho lưu trữ đám mây trong một dự án trên kế hoạch Spark, kết quả phụ thuộc vào loại giới hạn mà bạn vượt quá:
Nếu bạn vượt quá giới hạn được lưu trữ GB , bạn sẽ không thể lưu trữ thêm dữ liệu trong dự án đó trừ khi bạn xóa một số dữ liệu được lưu trữ hoặc nâng cấp lên kế hoạch cung cấp thêm không gian lưu trữ hoặc không gian lưu trữ không giới hạn.
Nếu bạn vượt quá giới hạn đã tải xuống GB , ứng dụng của bạn sẽ không thể tải xuống nhiều dữ liệu hơn cho đến ngày hôm sau (bắt đầu vào lúc nửa đêm, giờ Mỹ Thái Bình Dương), trừ khi bạn nâng cấp lên một kế hoạch với giới hạn ít hạn chế hơn hoặc không có giới hạn.
Nếu bạn vượt quá giới hạn hoạt động tải lên hoặc tải xuống , ứng dụng của bạn sẽ không thể tải lên hoặc tải xuống nhiều dữ liệu hơn cho đến ngày hôm sau (bắt đầu từ nửa đêm, thời gian Thái Bình Dương của Hoa Kỳ), trừ khi bạn nâng cấp lên một kế hoạch với giới hạn hạn chế ít hơn hoặc không có Hạn mức.
Sự riêng tư
Tôi có thể tìm thông tin về quyền riêng tư và bảo mật ở đâu trong Firebase?
SDK Firebase có ghi lại bất kỳ thông tin sử dụng/chẩn đoán nào bên ngoài phân tích không?
Đúng. Điều này hiện chỉ là iOS, nhưng có thể thay đổi trong tương lai. SDK nền tảng Firebase Apple bao gồm khung FirebaseCoreDiagnostics theo mặc định. Khung này được Firebase sử dụng để thu thập thông tin sử dụng SDK và chẩn đoán để giúp ưu tiên cải tiến sản phẩm trong tương lai. FirebaseCoreDiagnostics là tùy chọn, vì vậy nếu bạn muốn từ chối gửi nhật ký chẩn đoán Firebase, bạn có thể làm như vậy bằng cách tháo thư viện khỏi ứng dụng của mình. Bạn có thể duyệt toàn bộ nguồn, bao gồm các giá trị đã ghi, trên GitHub
Thử nghiệm A/B
Kiểm tra A/B: Tôi có thể tạo và chạy bao nhiêu thí nghiệm?
Bạn được phép lên tới 300 thí nghiệm cho mỗi dự án, có thể bao gồm tối đa 24 thí nghiệm đang chạy, phần còn lại là bản nháp hoặc hoàn thành.
Kiểm tra A/B: Tại sao tôi không thể xem các thử nghiệm của mình sau khi hủy liên kết và liên kết lại dự án của mình với Google Analytics?
Liên kết với một thuộc tính Google Analytics khác sẽ khiến bạn mất quyền truy cập vào các thử nghiệm được tạo trước đó. Để lấy lại quyền truy cập vào một thử nghiệm trước đó, hãy liên kết lại dự án của bạn với thuộc tính Google Analytics được liên kết khi thử nghiệm được tạo.
Kiểm tra A/B: Tại sao tôi nhận được thông báo "dự án không được liên kết với Google Analytics" khi tạo thử nghiệm cấu hình từ xa?
Nếu bạn đã liên kết Firebase và Google Analytics , nhưng vẫn thấy một thông điệp rằng Google Analytics không được liên kết, hãy đảm bảo rằng một luồng phân tích tồn tại cho tất cả các ứng dụng trong dự án của bạn. Hiện tại, tất cả các ứng dụng trong một dự án phải được kết nối với luồng Google Analytics để sử dụng thử nghiệm A/B.
Bạn có thể tìm thấy danh sách tất cả các luồng hoạt động trên trang Chi tiết tích hợp Google Analytics trong bảng điều khiển Firebase, được truy cập từ settings Cài đặt dự ánchevron_righttích hợpchevron_rightGoogle Analyticschevron_rightManage .
Tạo luồng Google Analytics cho bất kỳ ứng dụng nào không có người ta nên giải quyết vấn đề. Có một vài cách để tạo luồng cho các ứng dụng bị thiếu:
Nếu bạn chỉ có một hoặc hai ứng dụng bị thiếu luồng Google Analytics liên quan, bạn có thể chọn một trong các phương thức sau để thêm luồng Google Analytics:
Xóa và thêm lại bất kỳ ứng dụng nào mà không có luồng hoạt động trong bảng điều khiển Firebase.
Từ bảng điều khiển Google Analytics , chọn Quản trị viên , nhấp vào luồng dữ liệu , sau đó nhấp vào Thêm luồng , thêm chi tiết của ứng dụng bị thiếu và nhấp vào ứng dụng Đăng ký .
Nếu bạn có nhiều hơn một vài luồng ứng dụng bị thiếu, việc hủy liên kết và liên kết lại thuộc tính Google Analytics của bạn là cách nhanh nhất và hiệu quả nhất để tạo các luồng ứng dụng bị thiếu:
Trong thẻ Google Analytics , nhấp vào Quản lý để truy cập cài đặt Firebase và Google Analytics.
Ghi lại ID thuộc tính Google Analytics và tài khoản Google Analytics được liên kết .
Nhấp vào more_vertnhiều hơn và chọn phân tích phân tích từ dự án này .
Xem lại cảnh báo xuất hiện (đừng lo lắng ở đây; bạn sẽ liên kết lại cùng một thuộc tính trong bước tiếp theo), sau đó nhấp vào việc hủy liên kết Google Analytics .
Khi hủy liên kết hoàn tất, bạn sẽ được chuyển hướng đến trang tích hợp .
Trong thẻ Google Analytics , nhấp vào Bật để bắt đầu quá trình liên kết.
Chọn tài khoản Analytics của bạn từ danh sách tài khoản chọn .
Tiếp theo để tự động tạo một thuộc tính mới trong tài khoản này , nhấp vào editChỉnh sửa và, từ danh sách thuộc tính Analytics xuất hiện, chọn ID thuộc tính của bạn.
Một danh sách tất cả các ứng dụng trong dự án của bạn xuất hiện. Ánh xạ luồng hiện tại cho mỗi ứng dụng được liệt kê và các ứng dụng không có luồng sẽ có một ứng dụng được tạo cho chúng.
Nhấp vào Bật Google Analytics để liên kết lại tài sản.
Admob: Để sử dụng Admob, tôi nên sử dụng SDK Firebase cho ADMOB hoặc SDK quảng cáo di động Google?
Đối với các dự án iOS , hãy sử dụng SDK của Google Mobile ADS: pod 'Google-Mobile-Ads-SDK'
Đối với các dự án Android , hãy sử dụng SDK của Google Mobile ADS: implementation 'com.google.android.gms:play-services-ads:22.5.0'
Lưu ý rằng SDKs Android Firebase cho AMMOB chuyển tiếp bao gồm SDK Firebase cho Google Analytics. Vì vậy, nếu ứng dụng của bạn gọi bất kỳ API nào của Google Analytics và bạn chuyển sang sử dụng SDK của Google Mobile ADS, hãy đảm bảo rằng bạn rõ ràng thêm sự phụ thuộc cho SDK Firebase cho Google Analytics ( com.google.firebase:firebase-analytics ) vào ứng dụng của bạn build.gradle File.
Phân tích: Tại sao Google Analytics là một phần được khuyến nghị sử dụng các sản phẩm Firebase?
Google Analytics là một giải pháp phân tích miễn phí và không giới hạn, hoạt động với các tính năng của firebase để cung cấp những hiểu biết mạnh mẽ. Nó cho phép bạn xem nhật ký sự kiện trong crashlytics, hiệu quả thông báo trong FCM, hiệu suất liên kết sâu cho các liên kết động và dữ liệu mua trong ứng dụng từ Google Play. Nó cung cấp năng lượng cho đối tượng nâng cao nhắm mục tiêu trong cấu hình từ xa, cá nhân hóa cấu hình từ xa và hơn thế nữa.
Google Analytics hoạt động như một lớp thông minh trong bảng điều khiển Firebase để cung cấp cho bạn những hiểu biết có thể hành động hơn về cách phát triển một ứng dụng chất lượng cao, phát triển cơ sở người dùng của bạn và kiếm được nhiều tiền hơn.
Phân tích: Làm thế nào để tôi kiểm soát cách dữ liệu phân tích của tôi được chia sẻ với phần còn lại của Firebase?
Theo mặc định, dữ liệu Google Analytics của bạn được sử dụng để tăng cường các tính năng khác của Firebase và Google. Bạn có thể kiểm soát cách dữ liệu Google Analytics của bạn được chia sẻ trong cài đặt dự án của bạn bất cứ lúc nào. Tìm hiểu thêm về cài đặt chia sẻ dữ liệu .
Phân tích: Làm cách nào để cập nhật cài đặt thuộc tính phân tích của mình?
Từ trang quản trị viên trong thuộc tính Google Analytics của bạn, bạn có thể cập nhật cài đặt thuộc tính của mình, chẳng hạn như:
Cài đặt chia sẻ dữ liệu
Cài đặt lưu dữ liệu
Múi giờ và cài đặt tiền tệ
Để cập nhật cài đặt thuộc tính của bạn, hãy làm theo các bước sau:
Trong bảng điều khiển Firebase, hãy truy cập settings của bạn> Cài đặt dự án .
Chuyển đến tab Tích hợp và sau đó trong thẻ Google Analytics, nhấp vào liên kết Quản lý hoặc Xem .
Phân tích: Tại sao tôi không thấy bất kỳ dữ liệu phân tích nào trong bảng điều khiển Firebase sau khi hủy liên kết Firebase khỏi Google Analytics?
Dữ liệu phân tích nằm trong thuộc tính Google Analytics - không phải trong dự án Firebase. Nếu bạn xóa hoặc hủy liên kết thuộc tính, thì dữ liệu phân tích sẽ không thể truy cập được cho Firebase và bạn sẽ thấy bảng điều khiển phân tích trống trong bảng điều khiển Firebase. Lưu ý rằng vì dữ liệu vẫn nằm trong thuộc tính được liên kết trước đó, bạn luôn có thể liên kết lại thuộc tính cho Firebase và xem dữ liệu phân tích trong bảng điều khiển Firebase.
Liên kết một tài khoản Google Analytics hoàn toàn mới (và do đó, một tài sản mới của Google Analytics) với dự án Firebase của bạn sẽ dẫn đến một bảng điều khiển phân tích trống trong bảng điều khiển Firebase. Tuy nhiên, nếu thuộc tính được liên kết trước đó của bạn vẫn tồn tại, thì bạn có thể chuyển dữ liệu hiện có từ thuộc tính cũ sang thuộc tính mới.
Phân tích: Nếu thuộc tính phân tích của tôi và dữ liệu của nó bị xóa, có cách nào để lấy lại chúng không?
Không. Nếu tài sản của bạn đã bị xóa, không thể bỏ tài sản hoặc truy xuất dữ liệu phân tích được thu thập trước đó được lưu trữ trong tài sản đó.
Nếu bạn muốn bắt đầu sử dụng Google Analytics một lần nữa, bạn có thể liên kết một thuộc tính mới hoặc một tài sản hiện có với dự án Firebase của bạn. Bạn có thể thực hiện liên kết này trong bảng điều khiển Firebase hoặc UI Google Analytics. Tìm hiểu thêm về việc liên kết một thuộc tính Google Analytics với dự án Firebase của bạn.
Phân tích: Nếu thuộc tính phân tích của tôi đã bị xóa, tôi có thể liên kết một thuộc tính Google Analytics mới với dự án Firebase của tôi và bắt đầu sử dụng lại Analytics không?
Nếu bạn muốn bắt đầu sử dụng Google Analytics một lần nữa, bạn có thể liên kết một thuộc tính mới hoặc một tài sản hiện có với dự án Firebase của bạn. Bạn có thể thực hiện liên kết này trong bảng điều khiển Firebase hoặc UI Google Analytics. Tìm hiểu thêm về việc liên kết một thuộc tính Google Analytics với dự án Firebase của bạn.
Lưu ý rằng vì tất cả dữ liệu phân tích được lưu trữ trong thuộc tính (không phải dự án Firebase), nên dữ liệu phân tích được thu thập trước đó không thể được truy xuất.
Phân tích: Sản phẩm Firebase hoặc các sản phẩm của Google sẽ bị ảnh hưởng như thế nào bởi việc xóa tài sản phân tích của tôi?
Một số sản phẩm Firebase dựa vào tích hợp Google Analytics. Nếu thuộc tính Analytics của bạn và dữ liệu của nó bị xóa, thì đó sẽ xảy ra nếu bạn sử dụng các sản phẩm sau:
CRASHLYTICS-Bạn không còn có thể thấy người dùng không gặp sự cố, nhật ký bánh mì và/hoặc cảnh báo vận tốc.
Nhắn tin đám mây và nhắn tin trong ứng dụng-Bạn không còn có thể sử dụng mục tiêu, số liệu chiến dịch, phân đoạn đối tượng và nhãn phân tích.
Cấu hình từ xa - Bạn không còn có thể sử dụng cấu hình được nhắm mục tiêu hoặc cá nhân hóa.
Kiểm tra A/B - Bạn không còn có thể sử dụng thử nghiệm A/B vì phép đo thử nghiệm được cung cấp bởi Google Analytics.
Liên kết động - Bất kỳ tính năng nào dựa vào dữ liệu từ Google Analytics sẽ bị phá vỡ.
Phân tích: Làm thế nào để tôi phân khúc người dùng chưa đáp ứng một số tiêu chí?
Bạn có thể điều chỉnh lại vấn đề bằng cách "nhắm mục tiêu tiêu cực" những người dùng này. Ví dụ: điều chỉnh lại vấn đề là "không hiển thị quảng cáo cho những người đã mua thứ gì đó" và tạo thành đối tượng của những người dùng đó để nhắm mục tiêu.
Phân tích: Các đối tượng và/hoặc các sự kiện được xác định trong giao diện Google Analytics cũng có sẵn trong bảng điều khiển Firebase?
Khán giả và thuộc tính người dùng của bạn sẽ được đồng bộ hóa. Đối với một số tính năng, bạn sẽ cần sử dụng giao diện Google Analytics, chẳng hạn như phân đoạn và phễu đóng. Bạn có thể truy cập giao diện Google Analytics trực tiếp thông qua các liên kết sâu từ bảng điều khiển Firebase.
Bất kỳ thay đổi nào bạn thực hiện từ bảng điều khiển Firebase cũng có thể được thực hiện trong Google Analytics và những thay đổi đó sẽ được phản ánh trong Firebase.
Xác thực
Xác thực Firebase: Những quốc gia nào được hỗ trợ xác thực điện thoại?
Xác thực FireBase hỗ trợ xác minh số điện thoại trên toàn thế giới, nhưng không phải tất cả các mạng đều gửi tin nhắn xác minh của chúng tôi một cách đáng tin cậy. Các quốc gia sau đây có tỷ lệ giao hàng tốt, và nên được dự kiến sẽ hoạt động tốt để đăng nhập số điện thoại.
Quốc gia
Mã số
QUẢNG CÁO
Andorra
AE
các Tiểu Vương Quốc Ả Rập Thống Nhất
AF
Afghanistan
AG
Antigua và Barbuda
Al
Albania
LÀ
Armenia
AO
Ăng-gô-la
AR
Argentina
BẰNG
American Samoa
TẠI
Áo
AU
Châu Úc
AW
Aruba
AZ
Azerbaijan
ba
Bosnia và Herzegovina
BB
Barbados
BD
Bangladesh
LÀ
nước Bỉ
BF
Burkina Faso
BG
Bulgaria
BJ
Bénin
BM
Bermuda
BN
Vương quốc Bru-nây
BO
Bôlivia
BR
Brazil
BS
Bahamas
BT
Bhutan
BW
Botswana
QUA
Bêlarut
BZ
Belize
Ca.
Canada
đĩa CD
Congo, (Kinshasa)
Cf
Cộng hòa trung phi
CG
Congo (Brazzaville)
CH
Thụy sĩ
Ci
Côte d'Ivoire
CK
Quần đảo Cook
Cl
Chilê
Cm
Ca-mơ-run
CO
Colombia
CR
Costa Rica
CV
Cabo Verde
CW
Rượu cam bì
C Y
Síp
CZ
Cộng hòa Séc
DE
nước Đức
DJ
Djibouti
DK
Đan mạch
DM
Dominica
LÀM
Cộng hòa Dominica
DZ
Algérie
EC
Ecuador
VÍ DỤ
Ai Cập
ES
Tây ban nha
ET
Ethiopia
Fi
Phần Lan
FJ
Fiji
FK
Quần đảo Falkland (Malvinas)
FM
Micronesia, Liên bang
FO
Quần đảo Faroe
Pháp
Pháp
Ga
Gabon
GB
Vương quốc Anh
GD
Grenada
GE
Gruzia
GF
Guiana thuộc Pháp
GG
Guernsey
GH
Ghana
GI
Gibraltar
Gl
Greenland
GM
Gambia
GP
Guadeloupe
GQ
Equatorial Guinea
Gr
Hy Lạp
GT
Guatemala
Gy
Guyana
HK
Hồng Kông, SAR Trung Quốc
HN
Honduras
nhân sự
Croatia
HT
Haiti
Hu
Hungary
NHẬN DẠNG
Indonesia
I E
Ireland
IL
Người israel
TÔI
Đảo Man
TRONG
Ấn Độ
CHỈ SỐ THÔNG MINH
Irắc
NÓ
Nước Ý
JE
áo đấu
JM
Jamaica
Jo
Jordan
JP
Nhật Bản
KE
Kenya
KILÔGAM
Kyrgyzstan
KH
Campuchia
km
Comoros
KN
Saint Kitts và Nevis
KR
Nam Triều Tiên)
KW
Cô-oét
KY
Quần đảo Cayman
Kz
Kazakhstan
LA
CHDCND Lào
LB
Liban
LC
Thánh Lucia
LI
Liechtenstein
LK
Sri Lanka
LS
Lesotho
LT
Litva
LU
Luxembourg
Lv
Latvia
LY
Lybia
MA
Ma-rốc
MD
Moldova
TÔI
Montenegro
Mf
Saint-Martin (Phần Pháp)
MG
Madagascar
MK
Macedonia, Cộng hòa
MM
Myanmar
MN
Mông Cổ
MO
Macao, Sar Trung Quốc
bệnh đa xơ cứng
Montserrat
MT
Malta
MU
Mô-ri-xơ
MW
Malawi
MX
México
CỦA TÔI
Malaysia
Mz
Mozambique
Na
Namibia
NC
Tân Caledonia
ĐB
Niger
Nf
Đảo Norfolk
Ng
Nigeria
Ni
Nicaragua
NL
nước Hà Lan
KHÔNG
Na Uy
NP
Nepal
New Zealand
New Zealand
OM
Ô-man
PA
Panama
Thể dục
Peru
PG
Papua New Guinea
PH
Philippin
PK
Pakistan
PL
Ba Lan
BUỔI CHIỀU
Thánh Pierre và Miquelon
quan hệ công chúng
Puerto Rico
Tái bút
Lãnh thổ của người Palestin
PT
Bồ Đào Nha
PY
Paraguay
QA
Qatar
NỐT RÊ
Đoàn tụ
RO
Rumani
RS
Serbia
Ru
Liên bang Nga
RW
Rwanda
SA
Ả Rập Saudi
SC
Seychelles
SE
Thụy Điển
SG
Singapore
SH
Saint Helena
Si
Slovenia
SK
Slovakia
SL
Sierra Leone
SN
Sénégal
SR
Suriname
ST
Sao Tome và Principe
Sv
El Salvador
SZ
Swaziland
TC
Quần đảo Turks và Caicos
TG
Đi
QUẦN QUÈ
nước Thái Lan
TL
Timor-Leste
TM
Turkmenistan
ĐẾN
Tonga
TR
Thổ Nhĩ Kỳ
TT
Trinidad và Tobago
TW
Đài Loan, Cộng hòa Trung Hoa
TZ
Tanzania, Cộng hòa thống nhất
UA
Ukraina
UG
Uganda
CHÚNG TA
nước Mỹ
UY
Uruguay
UZ
Uzbekistan
VC
Saint Vincent và Grenadines
ĐÃ
Venezuela (Cộng hòa Bolivar)
VG
Quần đảo British Virgin
VI
Quần đảo Virgin, chúng tôi
VN
Việt Nam
WS
Samoa
Các bạn
Yêmen
YT
mayotte
ZA
Nam Phi
ZM
Zambia
ZW
Zimbabwe
Xác thực Firebase: Làm cách nào để ngăn chặn lạm dụng SMS khi sử dụng xác thực điện thoại?
Để giúp bảo vệ dự án của bạn khỏi bị lạm dụng lưu lượng SMS và lạm dụng API, hãy thực hiện các bước sau:
Tìm kiếm các vùng có số lượng SMS được gửi rất cao và số lượng rất thấp (hoặc bằng không) SMS đã được xác minh. Tỷ lệ xác minh/gửi là tỷ lệ thành công của bạn. Tỷ lệ thành công lành mạnh thường nằm trong phạm vi 70-85% vì SMS không phải là giao thức phân phối được đảm bảo và một số khu vực có thể bị lạm dụng. Tỷ lệ thành công dưới 50% ngụ ý nhiều SMS đã gửi nhưng ít đăng nhập thành công, đây là một chỉ số phổ biến của các tác nhân xấu và bơm giao thông SMS.
Sử dụng Chính sách Vùng SMS để từ chối các khu vực SMS có tỷ lệ thành công thấp hoặc chỉ cho phép một số vùng nhất định nếu ứng dụng của bạn chỉ dành cho phân phối ở một số thị trường nhất định.
Hạn chế các miền xác thực được ủy quyền của bạn
Sử dụng bảng điều khiển Cài đặt xác thực để quản lý các miền được ủy quyền. Tên miền localhost được thêm theo mặc định vào các miền xác thực được phê duyệt để đơn giản hóa sự phát triển. Xem xét loại bỏ localhost khỏi các miền được ủy quyền trong dự án sản xuất của bạn để ngăn các tác nhân xấu chạy mã trên localhostcủa họ để truy cập dự án sản xuất của bạn.
Bật và thực thi kiểm tra ứng dụng
Kích hoạt kiểm tra ứng dụng để giúp bảo vệ dự án của bạn khỏi lạm dụng API bằng cách chứng thực rằng các yêu cầu chỉ đến từ các ứng dụng liên quan đến dự án của bạn.
Hãy nhớ rằng bạn cần thực thi kiểm tra ứng dụng để xác thực trong bảng điều khiển Firebase (xem xét giám sát lưu lượng truy cập trước khi thực thi). Ngoài ra, hãy kiểm tra lại danh sách các trang web được phê duyệt của Enterprise Enterprise của bạn để xác nhận rằng nó chỉ chứa các trang web sản xuất của bạn và danh sách các ứng dụng được đăng ký vào dự án của bạn trong kiểm tra ứng dụng là chính xác.
Lưu ý rằng kiểm tra ứng dụng giúp bảo vệ chống lại các cuộc tấn công tự động bằng cách khẳng định rằng cuộc gọi đến từ một trong các ứng dụng đã đăng ký của bạn. Nó không ngăn người dùng sử dụng ứng dụng của bạn theo những cách không lường trước được (ví dụ: bắt đầu sau đó không bao giờ hoàn thành các luồng đăng nhập để tạo SMS đã gửi).
Xác thực Firebase: Trong ứng dụng Android của tôi, tại sao tôi nhận được lỗi sau: Google sign in failed ?
Thực hiện theo các bước khắc phục sự cố trong Câu hỏi thường gặp này nếu bạn đang gặp lỗi sau:
GoogleFragment: Google sign in failed
com.google.android.gms.common.api.ApiException: 13: Unable to get token.
at
com.google.android.gms.internal.auth-api.zbay.getSignInCredentialFromIntent(com.google.android.gms:play-services-auth@@20.3.0:6)
Đảm bảo rằng Google Đăng nhập được bật đúng cách làm nhà cung cấp xác thực:
Trong tab Đăng nhập , Tắt và sau đó kích hoạt lại phương thức đăng nhập Google (ngay cả khi nó đã được bật):
Mở phương thức đăng nhập Google , vô hiệu hóa nó, sau đó nhấp vào Lưu .
Mở lại phương thức đăng nhập Google , bật nó, sau đó nhấp vào Lưu .
Ngoài ra, trong cấu hình nhà cung cấp đăng nhập Google của phần Xác thực , hãy đảm bảo rằng ID máy khách OAuth và Secret khớp với máy khách web được hiển thị trong trang thông tin đăng nhập của bảng điều khiển Google Cloud (xem phần ID máy khách OAuth 2.0 ).
Xác thực Firebase: Làm cách nào để xây dựng một máy khách Web OAuth theo cách thủ công ??
Ở đầu trang, chọn Tạo thông tin đăng nhập> ID máy khách OAuth .
Nếu bạn được nhắc định cấu hình màn hình đồng ý của mình, hãy làm theo các hướng dẫn trên màn hình và sau đó tiếp tục với các bước sau của Câu hỏi thường gặp này.
Tạo máy khách Web OAuth:
Đối với loại ứng dụng , chọn ứng dụng web .
Đối với nguồn gốc JavaScript được ủy quyền , hãy thêm các mục sau:
http://localhost
http://localhost:5000
https:// PROJECT_ID .firebaseapp.com
https:// PROJECT_ID .web.app
Đối với URI chuyển hướng được ủy quyền , hãy thêm những điều sau:
Trong tab Phương thức đăng nhập , hãy mở nhà cung cấp đăng nhập Google và sau đó dán ID máy khách Web Server và bí mật bạn vừa xây dựng và sao chép từ bảng điều khiển Google Cloud. Nhấp vào để lưu .
Xác thực FireBase:%APP_NAME% được xác định cho mẫu email cho email xác nhận có thể được gửi cho người dùng khi họ đăng ký bằng địa chỉ email và mật khẩu?
Trước tháng 12 năm 2022, %APP_NAME% trong mẫu email đã được điền với tên thương hiệu OAuth được tự động cung cấp bất cứ khi nào một ứng dụng Android được đăng ký trong dự án Firebase. Bây giờ, vì thương hiệu OAuth chỉ được cung cấp khi Google đăng nhập được bật, nên sau đây mô tả cách xác định %APP_NAME% :
Nếu tên thương hiệu OAuth có sẵn, thì %APP_NAME% trong mẫu email sẽ là tên thương hiệu OAuth (giống như hành vi trước tháng 12 năm 2022).
Nếu tên thương hiệu OAuth không khả dụng, đây là cách xác định %APP_NAME% trong mẫu email:
Đối với các ứng dụng web , %APP_NAME% sẽ là tên trang web lưu trữ firebase mặc định (giá trị trước .firebaseapp.com và .web.app và thường là ID dự án Firebase).
Đối với các ứng dụng di động:
Nếu tên gói Android hoặc ID gói iOS có mặt trong yêu cầu, thì %APP_NAME% sẽ là tên ứng dụng được sử dụng trong cửa hàng Play hoặc App Store (tương ứng).
Lưu ý rằng nếu việc tra cứu tên trang web lưu trữ Firebase mặc định không thành công, thì dự phòng cuối cùng là sử dụng ID dự án Firebase dưới dạng %APP_NAME% .
Chức năng đám mây
Hỗ trợ thời gian chạy chức năng đám mây
Làm cách nào để nâng cấp lên phiên bản Node.js được hỗ trợ mới nhất?
Chúng tôi khuyên bạn nên cập nhật định kỳ vào phiên bản mới nhất của mỗi tiện ích mở rộng được cài đặt trong dự án của bạn. Bạn có thể nâng cấp các phần mở rộng của các dự án của mình thông qua bảng điều khiển Firebase hoặc Firebase CLI .
Tin nhắn đám mây
Nhắn tin đám mây: Sự khác biệt giữa nhà soạn nhạc thông báo và tin nhắn đám mây là gì?
Firebase Cloud nhắn tin cung cấp một bộ khả năng nhắn tin hoàn chỉnh thông qua các giao thức SDKS và HTTP và XMPP của máy khách. Đối với các triển khai với các yêu cầu nhắn tin phức tạp hơn, FCM là lựa chọn đúng đắn.
Trình soạn thảo thông báo là một giải pháp nhắn tin nhẹ, không có máy chủ được xây dựng trên tin nhắn đám mây Firebase. Với bảng điều khiển đồ họa thân thiện với người dùng và các yêu cầu mã hóa giảm, nhà soạn nhạc thông báo cho phép người dùng dễ dàng gửi tin nhắn để tái cấu trúc và giữ lại người dùng, thúc đẩy tăng trưởng ứng dụng và hỗ trợ các chiến dịch tiếp thị.
Khả năng
Nhà soạn nhạc thông báo
Tin nhắn đám mây
Mục tiêu
Thiết bị đơn
Khách hàng đã đăng ký vào các chủ đề (tức là thời tiết)
Máy khách trong phân đoạn người dùng được xác định trước (ứng dụng, phiên bản, ngôn ngữ)
Khách hàng trong đối tượng phân tích được chỉ định
Khách hàng trong các nhóm thiết bị
Ngược dòng từ máy khách đến máy chủ
Loại tin nhắn
Thông báo lên đến 2kb
Tin nhắn dữ liệu lên đến 4kb
Vận chuyển
Ngay tức khắc
Thiết bị khách hàng trong tương lai giờ địa phương
phân tích
Thông báo tích hợp Bộ sưu tập phân tích và phân tích phễu
Nhắn tin đám mây: Apple tuyên bố họ sẽ không dùng giao thức nhị phân Legacy cho APN. Tôi có cần phải làm gì không?
Không. Tin nhắn đám mây Firebase đã chuyển sang giao thức APNS dựa trên HTTP/2 vào năm 2017. Nếu bạn đang sử dụng FCM để gửi thông báo đến các thiết bị iOS, không cần phải có hành động nào.
Nhắn tin đám mây: Tôi có cần sử dụng các dịch vụ Firebase khác để sử dụng FCM không?
Bạn có thể sử dụng nhắn tin đám mây Firebase như một thành phần độc lập, theo cách tương tự như bạn đã làm với GCM, mà không cần sử dụng các dịch vụ Firebase khác.
Nhắn tin trên đám mây: Tôi là nhà phát triển Google Cloud Messaging (GCM) hiện có. Tôi có nên chuyển sang nhắn tin đám mây Firebase không?
FCM là phiên bản mới của GCM dưới thương hiệu Firebase. Nó kế thừa cơ sở hạ tầng cốt lõi của GCM, với các SDK mới để giúp phát triển nhắn tin trên đám mây dễ dàng hơn.
Lợi ích của việc nâng cấp lên FCM SDK bao gồm:
Phát triển khách hàng đơn giản hơn. Bạn không còn phải viết logic đăng ký hoặc đăng ký của riêng bạn.
Một giải pháp thông báo ngoài hộp. Bạn có thể sử dụng trình soạn thảo thông báo, giải pháp thông báo không có máy chủ với bảng điều khiển web cho phép bất kỳ ai gửi thông báo để nhắm mục tiêu đối tượng cụ thể dựa trên hiểu biết từ Google Analytics.
Để nâng cấp từ SDK GCM lên SDK FCM, hãy xem Hướng dẫn di chuyển các ứng dụng Android và iOS .
Nhắn tin đám mây: Tại sao các thiết bị được nhắm mục tiêu của tôi dường như không nhận được tin nhắn?
Khi có vẻ như các thiết bị chưa nhận được tin nhắn thành công, trước tiên hãy kiểm tra hai nguyên nhân tiềm năng này:
Xử lý tin nhắn nền tảng cho các thông báo thông báo . Ứng dụng khách cần thêm logic xử lý tin nhắn để xử lý các thông báo thông báo khi ứng dụng ở phía trước trên thiết bị. Xem chi tiết cho iOS và Android .
Hạn chế tường lửa mạng . Nếu tổ chức của bạn có tường lửa hạn chế lưu lượng truy cập đến hoặc từ internet, bạn cần định cấu hình nó để cho phép kết nối với FCM để ứng dụng ứng dụng khách tin nhắn tin nhắn Firebase của bạn nhận được tin nhắn. Các cổng để mở là:
5228
5229
5230
FCM usually uses 5228, but it sometimes uses 5229 and 5230. FCM does not provide specific IPs, so you should allow your firewall to accept outgoing connections to all IP addresses contained in the IP blocks listed in Google's ASN of 15169 .
Cloud Messaging: I have implemented onMessageReceived in my Android app, but it is not being called.
When your app is in the background, notification messages are displayed in the system tray, and onMessageReceived is not called. For notification messages with a data payload, the notification message is displayed in the system tray, and the data that was included with the notification message can be retrieved from the intent launched when the user taps on the notification.
Notifications composer: What's the difference between the Notifications composer and Cloud Messaging?
The Notifications composer is a lightweight, serverless messaging solution built on Firebase Cloud Messaging. With a user-friendly graphical console and reduced coding requirements, the Notifications composer lets users easily send messages to reengage and retain users, foster app growth, and support marketing campaigns.
Firebase Cloud Messaging provides a complete set of messaging capabilities through its client SDKs and HTTP and XMPP server protocols. For deployments with more complex messaging requirements, FCM is the right choice.
Here's a comparison of the messaging capabilities provided by Firebase Cloud Messaging and the Notifications composer:
Capabilities
Notifications composer
Cloud Messaging
Mục tiêu
Single device
Clients subscribed to topics (ie weather)
Clients in predefined user segment (app, version, language)
Clients in specified analytics audiences
Clients in device groups
Upstream from client to server
Loại tin nhắn
Notifications up to 2kb
Data messages up to 4kb
Vận chuyển
Ngay tức khắc
Future client device local time
phân tích
Built-in Notifications analytics collection and funnel analytics
Notifications composer: I am an existing Google Cloud Messaging (GCM) developer, and I want to use the Notifications composer. Tôi nên làm gì?
The Notifications composer is an out-of-the-box solution that lets anyone send notifications to target specific audiences based on insights from Google Analytics. Also, the Notifications composer provides funnel analysis for every message, allowing easy evaluation of notification effectiveness.
If you are an existing GCM developer, to use the Notifications composer you have to upgrade from GCM SDKs to FCM SDKs. See the guides for migrating Android and iOS apps.
FCM features deprecated in June 2023
Which FCM APIs were deprecated on June 20, 2023, and what should I do if I am using those APIs?
The following APIs/SDKs will be affected by the deprecation:
Server APIs
API Name
API Endpoint
Impact on users
Cần hành động
Legacy HTTP protocol
https://fcm.googleapis.com/fcm/send
Requests to the endpoint will start failing after 6/21/2024.
API calls to FirebaseMessaging.send in the app won't trigger upstream messages to the app server after 6/21/2024.
Implement this functionality in your server logic. For example, some developers implement their own HTTP/gRPC endpoint and call the endpoint directly to send messages from their clients to the app server. See this gRPC Quick start for an example implementation of upstream messaging using gRPC.
Batch Send API
https://fcm.googleapis.com/batch
Requests to the endpoint will start failing after 6/21/2024.
These APIs will stop working after 6/21/2024 because they call the batch send API .
Upgrade to the latest Firebase Admin SDK and use the new APIs instead: sendEach()/ sendEachAsync()/send_each()/sendEachForMulticast()/sendEachForMulticastAsync()/ send_each_for_multicast() .
Note that the new APIs no longer call the deprecated batch send API, and for this reason they may create more concurrent HTTP connections than the old APIs.
Client SDKs
SDK versions
Impact on users
Cần hành động
GCM SDKs (deprecated in 2018)
Apps using GCM SDKs will not be able to register tokens nor receive messages from FCM after 6/21/2024.
Upgrade your Android SDK to the latest Firebase SDK if you haven't already done so.
JS SDKs version <7.0.0 (breaking change at version 7.0.0 in 2019)
Web apps using older JS SDKs will not be able to register tokens after 6/21/2024.
Upgrade your Firebase Web SDK to the latest version.
Will I see a service downgrade before June 2024?
No. You have 12 months (06/20/2023 - 06/21/2024) to migrate from the old APIs to new APIs without any service downgrade. We strongly recommend you to plan the migration as early as possible so you won't be impacted by the decommissioning of the APIs in June 2024.
After June 2024, you may see increased errors or lack of functionality when using the APIs/SDKs listed above.
What's the difference between OAuth 2.0 tokens and server keys?
An OAuth 2.0 token is a short-lived token derived from a service account . It's Google's standard auth model and it's more secure than static server keys.
Note that the request headers differ when you use OAuth 2.0 tokens for requests to different endpoints.
HTTP v1 API : Authorization: Bearer $oauth_token
Instance ID server API and Device group management API : Authorization: Bearer $oauth_token access_token_auth: true
Can I migrate my requests to the new API all at once?
We recommend that you slowly ramp up your traffic to the new API. If you expect to send more than 600,000 messages/min on a regular basis, contact Firebase support for instructions on how to increase quota or get recommendations on how to spread out traffic.
What's the difference between the HTTP v1 API and the legacy APIs when I send messages to topics/device groups?
Topics: you don't need to add the "/topics/" prefix to your topic target when you use the v1 API.
Device groups: You can use a group token as a token target in the HTTP v1 API. However, the HTTP v1 API doesn't return the success/failure counts in the response. We recommend that you use FCM topics or manage your device groups by yourself.
Does the HTTP v1 API support sending messages to multiple tokens in one request?
No. This feature, called "multicast" in legacy HTTP APIs, is not supported by the HTTP v1 API, which is better designed for scalability.
For use cases where end-to-end latency is critical, or where total fanout size is small (fewer than 1 million), Google recommends sending multiple separate requests using the HTTP v1 API. The HTTP v1 API over HTTP/2 performs similarly for 99.9% of multicast requests (sending < 100 tokens). For outlier use cases (sending 1000 tokens), it achieves up to a third of the throughput rate, so additional concurrency is needed to optimize for this atypical use case. Users can experience more reliability and availability with the HTTP v1 API than with legacy multicast.
For use cases where throughput and egress bandwidth are prioritized or where total fanout size is large (greater than 1 million), Google recommends topic messaging. While topic messaging requires a one-time action to subscribe recipients to a topic, it offers up to a 10,000 QPS per project fanout rate without a maximum limit on topic size.
What versions of the Firebase Admin SDK have the new APIs?
Nền tảng
Firebase Admin SDK version
Node.js
>=11.7.0
Python
>=6.2.0
Java
>=9.2.0
Đi
>=4.12.0
.MẠNG LƯỚI
>=2.4.0
What's the difference between the batch send API and the HTTP v1 API?
The FCM batch send API uses the same message format and authentication mechanism as the HTTP v1 API. However, it uses a different endpoint. If you want to improve efficiency, you should consider using HTTP/2 to send multiple requests over the same HTTP connection to the HTTP v1 API.
What should I do if I can't access my project?
Please reach out to the Google Cloud support team for help.
Cloud Storage for Firebase
Cloud Storage for Firebase: Why can't I use Cloud Storage for Firebase?
Cloud Storage for Firebase creates a default bucket in the App Engine no-cost tier. This allows you to quickly get up and running with Firebase and Cloud Storage for Firebase, without having to put in a credit card or enable a Cloud Billing account. It also allows you to easily share data between Firebase and a Google Cloud project.
There are, however, two known cases where this bucket cannot be created and you will be unable to use Cloud Storage for Firebase:
A project imported from Google Cloud which had a App Engine Master/Slave Datastore application.
A project imported from Google Cloud which has domain prefixed projects. For example: domain.com:project-1234 .
There are currently no workarounds to these issues, and we recommend that you create a new project in the Firebase console and enable Cloud Storage for Firebase in that project.
Cloud Storage for Firebase: Why do I get error code 412 responses about service account permissions and failed service account operations when using the Cloud Storage for Firebase API?
It's likely you're getting 412 error codes either because the Cloud Storage for Firebase API is not enabled for your project or a necessary service account is missing the required permissions.
Cloud Storage for Firebase: On Spark plan projects, can I store executable files?
For no-cost (Spark) plan projects, Firebase blocks uploads and hosting of certain executable file types for Windows, Android and Apple by Cloud Storage for Firebase and Firebase Hosting. This policy exists to prevent abuse on our platform.
Serving, hosting and file uploads of disallowed files are blocked for all Spark projects created on or after Sept 28th, 2023. For existing Spark projects with files uploaded before that date, such files can still be uploaded and hosted.
This restriction applies to Spark plan projects. Projects on the pay as you go (Blaze) plan are not affected.
The following file types cannot be hosted on Firebase Hosting and Cloud Storage for Firebase:
Windows files with .exe , .dll and .bat extensions
Android files with .apk extension
Apple platform files with .ipa extension
Tôi cần phải làm gì?
If you still want to host these file types after September 28th, 2023:
For Hosting: upgrade to the Blaze plan before you can deploy these file types to Firebase Hosting via the firebase deploy command.
For Storage: upgrade to the Blaze plan to upload these file types to the bucket of your choice using the GCS CLI, the Firebase console, or Google Cloud Console.
Use Firebase tools to manage your Firebase Hosting and Cloud Storage resources.
For managing resources in Firebase Hosting, use the Firebase console to delete releases according to this guide .
For managing resources in Cloud Storage, navigate to the Storage product page in your project.
On the Files tab, locate disallowed files to delete in your folder hierarchy, then select them using the checkbox next to the filename(s) on the left-hand side of the panel.
Click Delete , and confirm the files were deleted.
Cloud Storage for Firebase: Why do I see an unexpected increase in upload and download operations?
Previously, download and upload requests to the Cloud Storage for Firebase API were not being counted properly. We have taken steps to fix this issue, starting from September 15, 2023.
For Blaze users, upload and download operations will start counting towards your monthly bill. For Spark users, they will start counting towards your monthly free limit.
We recommend monitoring your Usage page for any increases that may count towards your limits.
Cloud Storage for Firebase: Why do I see new service account IDs associated with my Firebase projects that use Cloud Storage for Firebase?
Firebase uses service accounts to operate and manage services without sharing user credentials. When you create a Firebase project, you might notice that a number of service accounts are already available in your project.
The service account that Cloud Storage for Firebase uses is scoped to your project and is named service- PROJECT_NUMBER @gcp-sa-firebasestorage.iam.gserviceaccount.com .
If you used Cloud Storage for Firebase before September 19, 2022, you may see an additional service account on previously-linked Cloud Storage buckets named firebase-storage@system.gserviceaccount.com . As of September 19, 2022, this service account is no longer supported.
You can view all service accounts associated with your project in the Firebase console, on the Service accounts tab .
Adding the new service account
If you removed the service account previously or the service account is not present in your project, you may do one of the following to add the account.
(Recommended) Automated: Use the AddFirebase REST endpoint to re-import your bucket into Firebase. You will only need to call this endpoint once, not once for each linked bucket.
We strongly discourage you from removing the service account because this may block access to your Cloud Storage buckets from your apps. To remove the service account from your project, follow the instructions in Disabling a service account .
Dynamic Links: Why does my Android app access each Dynamic Link twice?
The getInvitation API clears the saved Dynamic Link to prevent it from being accessed twice. Be sure to call this API with the autoLaunchDeepLink parameter set to false in each of the deep link activities to clear it for the case when the activity is triggered outside the main activity.
Firebase Local Emulator Suite
Why do Emulator Suite logs show an error starting with "Multiple projectIds are not recommended in single project mode"?
This message means the Emulator Suite has detected it may be running a particular product emulator using different project IDs. This may indicate a misconfiguration, and can cause issues when emulators try to communicate with one another, and when you try to interact with emulators from your code. If project IDs don't match, it often appears that data is missing, since data stored in emulators is keyed to projectID, and interoperability depends on matching project IDs.
This has been a common source of confusion among developers, so by default the Local Emulator Suite will now only allow running with a single project ID, unless you specify otherwise in the firebase.json configuration file. If an emulator detects more than one project ID, it will log a warning and potentially throw a fatal error.
Check your project ID declaration(s) for mismatches in:
The default project set at the command line. By default, the project ID will be taken on startup from the project selected with firebase init or firebase use . To view the list of projects (and see which one is selected) use firebase projects:list .
Unit tests. The project ID is often specified in calls to the Rules Unit Testing library methods initializeTestEnvironment or initializeTestApp . Other testing code may initialize with initializeApp(config) .
The command line --project flag. Passing the Firebase CLI --project flag overrides the default project. You'll need to ensure the value of the flag matches the project ID in unit tests and app initialization.
Platform-specific places to check:
Web
The projectId property in your JavaScript firebaseConfig object, used in initializeApp .
Android
The project_id property inside the google-services.json configuration file.
Apple platforms
The PROJECT_ID property in the GoogleService-Info.plist configuration file.
To disable single project mode, update firebase.json with the singleProjectMode key:
Hosting: On Spark plan projects, can I store executable files?
For no-cost (Spark) plan projects, Firebase blocks uploads and hosting of certain executable file types for Windows, Android and Apple by Cloud Storage for Firebase and Firebase Hosting. This policy exists to prevent abuse on our platform.
Serving, hosting and file uploads of disallowed files are blocked for all Spark projects created on or after Sept 28th, 2023. For existing Spark projects with files uploaded before that date, such files can still be uploaded and hosted.
This restriction applies to Spark plan projects. Projects on the pay as you go (Blaze) plan are not affected.
The following file types cannot be hosted on Firebase Hosting and Cloud Storage for Firebase:
Windows files with .exe , .dll and .bat extensions
Android files with .apk extension
Apple platform files with .ipa extension
Tôi cần phải làm gì?
If you still want to host these file types after September 28th, 2023:
For Hosting: upgrade to the Blaze plan before you can deploy these file types to Firebase Hosting via the firebase deploy command.
For Storage: upgrade to the Blaze plan to upload these file types to the bucket of your choice using the GCS CLI, the Firebase console, or Google Cloud Console.
Use Firebase tools to manage your Firebase Hosting and Cloud Storage resources.
For managing resources in Firebase Hosting, use the Firebase console to delete releases according to this guide .
For managing resources in Cloud Storage, navigate to the Storage product page in your project.
On the Files tab, locate disallowed files to delete in your folder hierarchy, then select them using the checkbox next to the filename(s) on the left-hand side of the panel.
Click Delete , and confirm the files were deleted.
Hosting: Why does my Hosting release history table in the Firebase console show file counts that are more than what my local project actually has?
Firebase automatically adds extra files containing metadata about the Hosting site, and these files are included in the total file count for the release.
Hosting: What's the largest file size that I can deploy to Firebase Hosting?
Hosting has a maximum size limit of 2 GB for individual files.
We recommend storing larger files using Cloud Storage , which offers a maximum size limit in the terabyte range for individual objects.
Hosting: How many Hosting sites can I have per Firebase project?
Performance Monitoring: How many custom URL patterns can I create?
You can create up to 400 total custom URL patterns per app and up to 100 custom URL patterns per domain for that app.
Performance Monitoring: Why am I not seeing real time display of performance data?
To view real time performance data, make sure that your app uses a Performance Monitoring SDK version that's compatible with real time data processing.
iOS — v7.3.0 or later
tvOS — v8.9.0 or later
Android — v19.0.10 or later (or Firebase Android BoM v26.1.0 or later)
Web — v7.14.0 or later
Note that we always recommend using the latest version of SDK, but any version listed above will enable Performance Monitoring to process your data in near real time.
Realtime Database
Realtime Database: Why was my Realtime Database reported bandwidth lower than average between September 2016 and March 2017?
For our bandwidth calculations, we normally include SSL encryption overhead (based on layer 5 of the OSI model). However, in September 2016, we introduced a bug that caused our bandwidth reporting to ignore encryption overhead. This might have resulted in artificially low reported bandwidth and bills on your account for a few months.
We released a fix for the bug in late March 2017, returning bandwidth reporting and billing to their normal levels.
Realtime Database: What are the scaling limitations of the Realtime Database?
Each Realtime Database instance has limits on the number of write operations per second. For small writes, this limit is approximately 1000 write operations per second. If you are approaching this limit, batching operations using multi-path updates can help you achieve higher throughput.
Realtime Database: What can I do if I'm over my Realtime Database usage limits?
If you've received an email alert or notification in the Firebase console that you've exceeded your Realtime Database usage limits, you can address it based on the usage limit you've exceeded. To see your Realtime Database usage, go to the Realtime Database Usage dashboard in the Firebase console.
If you're over your download limit, you can upgrade your Firebase pricing plan or wait until your download limit resets at the start of your next billing cycle. To decrease your downloads, try the following steps:
Add queries to limit the data that your listen operations return.
Check for unindexed queries.
Use listeners that only download updates to data — for example, on() instead of once() .
Use security rules to block unauthorized downloads.
If you're over your storage limit, upgrade your pricing plan to avoid service disruptions. To reduce the amount of data in your database, try the following steps:
Run periodic cleanup jobs.
Reduce any duplicate data in your database.
Note that it may take some time to see any data deletions reflected in your storage allotment.
If you're over your simultaneous database connections limit, upgrade your plan to avoid any service disruptions. To manage simultaneous connections to your database, try connecting via users via the REST API if they don't require a realtime connection.
Remote Config
Remote Config: Why don't fetched values change the behavior and appearance of my app?
Unless you fetch values with fetchAndActivate() , values are stored locally but not activated. To activate fetched values so that they can take effect, call activate . This design lets you control when the behavior and appearance of your app changes, because you can choose when to call activate . After you call activate , your app source code determines when updated parameter values are used.
For example, you could fetch values and then activate them the next time a user starts your app, which removes the need to delay app startup while your app waits for fetched values from the service. Changes to your app's behavior and appearance then occur when your app uses the updated parameter values.
Remote Config: I am making a lot of fetch requests while developing my app. Why doesn't my app always get the latest values from the service when it sends fetch requests?
During app development, you might want to fetch and activate configs very frequently (many times per hour) to let you rapidly iterate as you develop and test your app. To accommodate rapid iteration on a project with up to 10 developers, you can temporarily set a FirebaseRemoteConfigSettings object with a low minimum fetch interval ( setMinimumFetchIntervalInSeconds ) in your app.
Remote Config: How quickly does the Remote Config service return fetched values after my app sends a fetch request?
Devices usually receive fetched values in less than a second, and often receive fetched values in milliseconds. The Remote Config service handles fetch requests within milliseconds, but the time required to complete a fetch request will depend on the network speed of the device and the latency of the network connection used by the device.
If your goal is to make fetched values take effect in your app as soon as possible, but without creating a jarring user experience, consider adding calls to fetchAndActivate each time that your app does a full screen refresh.
Firebase User Segmentation Storage stores Firebase installation IDs and related attributes and segments as well as audience lists you've created to provide targeting information to other Firebase services that use them, such as Crashlytics, FCM, Remote Config personalization, and more.