Bạn có những thách thức khác hoặc không thấy vấn đề của bạn được nêu bên dưới? Vui lòng báo cáo lỗi hoặc yêu cầu tính năng và tham gia các cuộc thảo luận về Stack Overflow.
Các dự án Firebase và ứng dụng Firebase
Dự án Firebase là gì?
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ý ứng dụng web của Apple, Android hoặc ứng dụng web. Sau khi đăng ký ứng dụng của mình với Firebase, bạn có thể thêm Firebase SDK 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 Cấu hình từ xa.
Bạn nên đăng ký các biến thể của Apple, Android và ứng dụng web 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ư môi trường phát triển, thử nghiệm và sản xuất.
Sau đây là một số tài nguyên để tìm hiểu thêm về các dự án Firebase:
- Tìm 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 cả mối quan hệ của chúng với Google Cloud và hệ phân cấp cơ bản của dự án cũng như các ứng dụng và tài nguyên trong đó.
- 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 chung hay nhất để thiết lập dự án Firebase và đăng ký ứng dụng cho 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.
Xin lưu ý rằng đối với tất cả dự án Firebase, Firebase sẽ tự động thêm nhãn
firebase:enabled
trên
trang Nhãn cho dự án của bạn trong
bảng điều khiển Google Cloud. Tìm hiểu thêm về nhãn này trong phần
Câu hỏi thường gặp của chúng tôi.
Tổ chức trên Google Cloud là gì?
Tổ chức trên Google Cloud là một vùng chứa dành cho các dự án trên Google Cloud (bao gồm cả các dự án Firebase). Hệ thống phân cấp này giúp bạn tổ chức, quản lý quyền truy cập và kiểm tra các dự án của mình trên Google Cloud và Firebase một cách hiệu quả hơn. Để biết thêm thông tin, hãy tham khảo bài viết Tạo và quản lý tổ chức.
Làm cách nào để thêm Firebase vào một dự án hiện có trên Google Cloud?
Bạn có thể quản lý các dự án hiện có trên Google Cloud thông qua bảng điều khiển Google Cloud hoặc bảng điều khiển API của Google.
Bạn có thể thêm Firebase vào các dự án hiện có này bằng cách sử dụng bất kỳ tuỳ chọn nào sau đây:
- Sử dụng bảng điều khiển của Firebase:
Trên trang đích của bảng điều khiển của Firebase, hãy nhấp vào Thêm dự án, sau đó chọn dự án hiện có của bạn trên trình đơn Tên dự án. - Sử dụng lựa chọn có lập trình:
- Gọi điểm cuối API REST Quản lý Firebase là
addFirebase
. - Chạy lệnh CLI của Firebase
firebase projects:addfirebase
. - Sử dụng Terraform.
- Gọi điểm cuối API REST Quản lý Firebase là
Tại sao dự án của tôi trên Google Cloud có nhãn firebase:enabled
?
Trên trang Nhãn cho dự án của bạn trong bảng điều khiển Google Cloud, bạn có thể thấy một nhãn của firebase:enabled
(cụ thể là một nhãn 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à một dự án Firebase, tức là dự án của bạn đã được bật các cấu hình và dịch vụ dành riêng cho Firebase. Hãy tìm hiểu thêm về mối quan hệ giữa các dự án Firebase và Google Cloud.
Bạn không nên sửa đổi hoặc xoá nhãn này. Firebase và Google Cloud sử dụng nhãn này để liệt kê các dự án Firebase của bạn (ví dụ: sử dụng điểm cuối API REST projects.list
hoặc trong các trình đơn trong bảng điều khiển của Firebase).
Xin lưu ý rằng việc thêm nhãn này vào danh sách nhãn dự án theo cách thủ công sẽ KHÔNG kích hoạt cấu hình và dịch vụ dành riêng cho Firebase cho dự án của bạn trên Google Cloud. Để làm điều đó, bạn cần thêm Firebase thông qua bảng điều khiển của Firebase (hoặc thông qua API REST quản lý Firebase hoặc giao diện người dùng của Firebase) đối với các trường hợp sử dụng nâng cao).
Tại sao dự án Firebase của tôi không xuất hiện trong danh sách dự án Firebase?
Bạn có thể sử dụng câu hỏi thường gặp này nếu không thấy dự án Firebase của mình ở những vị trí sau:
- Trong danh sách các dự án mà bạn đang xem trong bảng điều khiển của Firebase
- Trong phản hồi từ việc gọi điểm cuối
projects.list
của API REST - Trong phản hồi từ việc chạy lệnh CLI Firebase
firebase projects:list
Hãy thử các bước khắc phục sự cố sau đây:
- Trước tiên, hãy thử truy cập vào dự án của bạn bằng cách truy cập trực tiếp vào URL của dự án. Hãy 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 vào dự án hoặc gặp lỗi liên quan đến quyền, hãy kiểm tra những mục sau:
- Hãy nhớ đăng nhập vào Firebase bằng chính Tài khoản Google có quyền truy cập vào dự án này. Bạn có thể đăng nhập và đăng xuất khỏi bảng điều khiển của Firebase thông qua hình đại diện của tài khoản ở góc trên cùng bên phải của bảng điều khiển.
- Kiểm tra xem bạn có thể xem dự án trong bảng điều khiển Google Cloud hay không.
- Đảm bảo dự án của bạn có nhãn
firebase:enabled
trên trang Nhãn cho dự án trong bảng điều khiển Google Cloud. 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 Firebase Management API được bật cho dự án của mình, hãy thêm nhãn theo cách thủ công (cụ thể làKey
củafirebase
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ó quyền liên quan đến Firebase, ví dụ: vai trò được xác định trước trên Firebase. Bạn có thể xem(các) vai trò của mình trong trang IAM của bảng điều khiển Google Cloud.
- Nếu dự án của bạn thuộc một tổ chức trên Google Cloud, bạn có thể cần thêm quyền để xem dự án đó trong bảng điều khiển của Firebase. Hãy liên hệ với người quản lý tổ chức của bạn trên Google Cloud để đề nghị họ cấp cho bạn vai trò thích hợp để xem dự án, chẳng hạn 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 thấy dự án của mình trong danh sách dự án Firebase, hãy liên hệ với Nhóm hỗ trợ Firebase.
Tôi có thể có bao nhiêu dự án cho mỗi tài khoản?
- Gói giá linh hoạt – Hạn mức dự án của bạn chỉ giới hạn ở một số ít dự án (thường là khoảng 5 đến 10 dự án).
- Gói giá linh hoạt – Hạn mức dự án của bạn cho mỗi tài khoản thanh toán Cloud sẽ tăng đáng kể, miễn là tài khoản thanh toán Cloud của bạn đang ở trạng thái tốt.
Hầu hết các nhà phát triển hiếm khi lo ngại về hạn mức dự án. Tuy nhiên, nếu cần, bạn có thể yêu cầu tăng hạn mức cho dự án.
Xin lưu ý rằng việc xoá hoàn toàn dự án sẽ mất 30 ngày và sẽ được tính vào hạn mức của bạn cho đến khi dự án bị xoá hoàn toàn.
Tôi có thể có bao nhiêu Ứng dụng Firebase trong một dự án Firebase?
Dự án Firebase là một vùng chứa cho Ứng dụng Firebase trên Apple, Android và web. Firebase giới hạn tổng số Ứng dụng Firebase trong một dự án Firebase ở mức 30.
Sau con số này, hiệu suất bắt đầu giảm (đặc biệt là đố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 với tư cách là nhà cung cấp dịch vụ xác thực, thì một mã ứ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. Bạn có thể tạo tối đa khoảng 30 mã ứng dụng khách trong một dự án.
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à 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 một ứng dụng nhãn trắng, thì mỗi ứng dụng được gắn nhãn độc lập phải có dự án Firebase riêng, nhưng các phiên bản dành cho Apple và Android của nhãn đó có thể nằm trong cùng một dự án. Hãy đọc thêm hướng dẫn chi tiết trong các phương pháp chung hay nhất để thiết lập dự án Firebase.
Trong một số ít trường hợp, dự án của bạn cần hơn 30 ứng dụng, thì 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 sử dụng Gói giá linh hoạt để đưa ra yêu cầu này. Hãy truy cập bảng điều khiển Google Cloud để gửi yêu cầu và đánh giá yêu cầu đó. Tìm hiểu thêm về việc quản lý hạn mức trong tài liệu của Google Cloud.
Điều gì sẽ 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 của Firebase, bạn có thể gắn thẻ các dự án Firebase theo loại môi trường tương ứng, dưới dạng môi trường Phát hành chính thức hoặc Không xác định (không phải sản phẩm).
Việc gắn thẻ cho dự án làm loại môi trường sẽ không ảnh hưởng đến cách hoạt động hoặc các tính năng của dự án Firebase đó. Tuy nhiên, việc gắn thẻ có thể giúp bạn và nhóm của bạn quản lý nhiều dự án Firebase trong vòng đời của ứng dụng.
Nếu bạn gắn thẻ dự án là môi trường phát hành chính thức, thì chúng tôi sẽ thêm thẻ Sản phẩm có màu sáng rực rỡ vào dự án đó trong bảng điều khiển của Firebase để nhắc bạn rằng mọi thay đổi đều có thể ảnh hưởng đến các ứng dụng chính thức được liên kết. Trong tương lai, chúng tôi có thể bổ sung thêm các tính năng và biện pháp bảo vệ khác cho các dự án Firebase được gắn thẻ là môi trường phát hành chính thức.
Để thay đổi loại môi trường của dự án Firebase, hãy chuyển đến phần settings Cài đặt dự án > Chung, sau đó, trong thẻ Dự án của bạn trong mục 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 thấy Mã ứng dụng cho ứng dụng Firebase của mình ở đâu?
Trong bảng điều khiển của Firebase, hãy chuyển đến settings Cài đặt dự án. Di chuyển xuống thẻ Ứng dụng của bạn, sau đó nhấp vào ứng dụng Firebase mà bạn muốn xem để xem thông tin của ứng dụng, bao gồm cả Mã ứng dụng.
Dưới đây là một số giá trị ID ứng dụng mẫu:
-
Ứng dụng Firebase dành cho iOS:
1:1234567890:ios:321abc456def7890
-
Ứng dụng Firebase dành cho Android:
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ì?
- Để liên kết
tài khoản Google Play, bạn cần có:
- Một trong các vai trò sau đây trên Firebase: Chủ sở hữu hoặc Quản trị viên Firebase
và - Một trong các cấp truy cập sau đây trên Google Play: Chủ sở hữu tài khoản hoặc Quản trị viên
- Một trong các vai trò sau đây trên Firebase: Chủ sở hữu hoặc Quản trị viên Firebase
- Để liên kết ứng dụng AdMob, bạn cần phải 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, bạn cần phải 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, bạn phải là chủ sở hữu dự án Firebase.
Tôi nên đưa thông báo nguồn mở nào vào ứng dụng của mình?
Trên các nền tảng của Apple, nhóm Firebase chứa một tệp CHÚ Ý bao gồm các mục có liên quan. SDK Android của Firebase chứa một Activity
trình trợ giúp để hiển thị thông tin giấy phép.
Quyền và quyền truy cập vào 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 trong 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ò có quyền resourcemanager.projects.setIamPolicy
).
Bạn có thể chỉ định và quản lý các vai trò sau đây:
- Bảng điều khiển của Firebase mang đến một cách đơn giản hơn để chỉ định vai trò cho các thành viên trong dự án trong thẻ Người dùng và quyền của settings > Cài đặt dự án. Trong bảng điều khiển của Firebase, bạn có thể chỉ định bất kỳ vai trò cơ bản nào (Chủ sở hữu, Người chỉnh sửa, Người xem), vai trò Quản trị viên/Người xem trong Firebase hoặc bất kỳ vai trò danh mục sản phẩm nào được xác định trước trong Firebase.
- Bảng điều khiển của Google Cloud cung cấp một bộ công cụ phong phú để chỉ định vai trò cho các thành viên trong dự án trên trang IAM. Trong bảng điều khiển Cloud, bạn cũng có thể tạo và quản lý vai trò tuỳ 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 bạn.
Lưu ý rằng trong bảng điều khiển Google Cloud, các thành viên của dự án được gọi là principals (chính).
Nếu Chủ sở hữu của dự án không thể thực hiện các nhiệm vụ của một Chủ sở hữu nữa (ví dụ: người này đã rời khỏi công ty của bạn) và dự án của bạn không được quản lý thông qua một tổ chức trên Google Cloud (xem đoạn tiếp theo), thì bạn có thể liên hệ với Nhóm hỗ trợ Firebase để được chỉ định một Chủ sở hữu tạm thời.
Xin lưu ý rằng nếu một dự án Firebase thuộc một tổ chức trên Google Cloud, thì dự án đó có thể không có Chủ sở hữu. Nếu bạn không tìm được 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 của bạn trên Google Cloud để chỉ định một Chủ sở hữu cho dự án.
Làm cách nào để tìm Chủ sở hữu của dự án Firebase?
Bạn có thể xem các thành viên trong 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 của Firebase, bạn có thể xem danh sách thành viên của dự án, bao gồm cả Chủ sở hữu, trên trang Người dùng và quyền của bảng điều khiển của Firebase.
- Nếu bạn không có quyền truy cập vào dự án trong bảng điều khiển của Firebase, hãy kiểm tra xem bạn có quyền truy cập vào dự án trong bảng điều khiển Google Cloud hay không. Bạn có thể xem danh sách thành viên của dự án, bao gồm cả Chủ sở hữu, trên trang IAM của bảng điều khiển Google Cloud.
Nếu Chủ sở hữu dự án không thể thực hiện các nhiệm vụ của Chủ sở hữu nữa (ví dụ: người này đã rời khỏi công ty của bạn) và dự án của bạn không được quản lý thông qua một tổ chức Google Cloud (xem đoạn tiếp theo), thì bạn có thể liên hệ với Nhóm hỗ trợ Firebase để được chỉ định một Chủ sở hữu tạm thời.
Xin lưu ý rằng nếu một dự án Firebase thuộc một tổ chức trên 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 trên Google Cloud có thể làm nhiều việc mà Chủ sở hữu có thể làm. Tuy nhiên, để thực hiện một số nhiệm vụ riêng của Chủ sở hữu (như chỉ định vai trò hoặc quản lý tài sản Google Analytics), quản trị viên có thể cần phải tự chỉ định vai trò thực sự của Chủ sở hữu để thực hiện những nhiệm vụ đó. Nếu bạn không tìm được 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 của bạn trên Google Cloud để chỉ định một 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 dự án Firebase có thể quản lý đúng cách, dự án đó phải có một Chủ sở hữu. Chủ sở hữu của dự án là người có thể thực hiện một số hành động quản trị quan trọng (chẳng hạn như chỉ định vai trò và quản lý các tài sản Google Analytics) và Nhóm 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 minh họa.
Sau khi thiết lập(các) Chủ sở hữu cho một dự án Firebase, bạn cần phải duy trì cập nhật những thông tin chỉ định đó.
Xin lưu ý rằng nếu dự án Firebase thuộc một tổ chức trên Google Cloud, thì người quản lý tổ chức Google Cloud của bạn có thể làm nhiều việc 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ý tài sản Google Analytics), quản trị viên có thể cần phải tự chỉ định cho mình vai trò thực sự Chủ sở hữu để thực hiện những nhiệm vụ đó.
Tôi nghĩ rằng mình không 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 vào dự án này?
Email bạn nhận được có chứa đường liên kết để mở dự án Firebase của bạn. Khi bạn nhấp vào đường liên kết trong email đó, dự án sẽ mở ra trong bảng điều khiển của Firebase.
Nếu bạn không thể mở dự án trong đường 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 của Firebase thông qua hình đại diện của tài khoản ở góc trên cùng 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 một tổ chức trên Google Cloud, bạn có thể nhận đượ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, có thể bạn 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ự chỉ định 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 bắt buộc. Tìm hiểu thêm về lý do và thời điểm nên chỉ định vai trò Chủ sở hữu.
Nền tảng và khung
Truy cập trang Câu hỏi thường gặp và trang khắc phục sự cố dành riêng cho từng nền tảng để biết các mẹo và câu trả lời hữu ích cũng như xem thêm các câu hỏi thường gặp khác.
bảng điều khiển của Firebase
Những trình duyệt nào được hỗ trợ để truy cập vào bảng điều khiển của Firebase?
Bạn có thể truy cập vào bảng điều khiển của Firebase qua các phiên bản gần đây của các trình duyệt phổ biến dành cho máy tính như Chrome, Firefox, Safari và Edge. Trình duyệt dành cho thiết bị di động hiện chưa được hỗ trợ đầy đủ.
Tôi có thể tải bảng điều khiển của Firebase, nhưng tại sao tôi không thể tìm thấy hoặc truy cập vào 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 các vấn đề sau:
- Bảng điều khiển của Firebase sẽ trả về một 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 của Firebase không hiển thị dự án của bạn ngay cả khi bạn nhập mã 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 đây:
- Trước tiên, hãy thử truy cập vào dự án của bạn bằng cách truy cập trực tiếp vào URL của dự án. Hãy 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 vào dự án hoặc gặp lỗi liên quan đến quyền, hãy kiểm tra những mục sau:
- Hãy đảm bảo rằng bạn đã đăng nhập vào Firebase bằng chính 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 của Firebase thông qua hình đại diện của tài khoản ở góc trên cùng bên phải của bảng điều khiển.
- Hãy nhớ bật API Quản lý Firebase cho dự á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ó quyền liên quan đến Firebase, chẳng hạn như vai trò được xác định trước trên Firebase. Bạn có thể xem(các) vai trò của mình trong trang IAM của bảng điều khiển Google Cloud.
- Nếu dự án của bạn thuộc về một tổ chức trên Google Cloud, thì bạn có thể cần có thêm quyền để xem dự án đó trong bảng điều khiển của Firebase. Hãy liên hệ với người quản lý tổ chức của bạn trên Google Cloud để đề nghị họ cấp cho bạn vai trò thích hợp để xem dự án, chẳng hạn 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 vào dự án của mình, hãy liên hệ với Bộ phận hỗ trợ của Firebase.
Tại sao bảng điều khiển của 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 của 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 của trình duyệt khi tải bảng điều khiển của Firebase.
Hãy thử các bước khắc phục sự cố sau đây:
- Kiểm tra hàng Console (Bảng điều khiển) trong Trang tổng quan về trạng thái Firebase để xem có thể xảy ra tình trạng gián đoạn dịch vụ hay không.
- Đảm bảo bạn đang dùng một trình duyệt được hỗ trợ.
- Thử tải bảng điều khiển của Firebase trong cửa sổ ẩn danh hoặc cửa sổ riêng tư.
- Tắt tất cả tiện ích cho trình duyệt.
- Xác minh rằng kết nối mạng không bị chặn bởi trình chặn quảng cáo, phần mềm diệt vi-rút, proxy, tường lửa hoặc phần mềm khác.
- Hãy thử tải bảng điều khiển của Firebase bằng một mạng hoặc thiết bị khác.
- Nếu sử dụng Chrome, hãy kiểm tra Bảng điều khiển công cụ cho nhà phát triển để xem có lỗi nào không.
Nếu các bước khắc phục sự cố ở trên không giải quyết được vấn đề, hãy liên hệ với Bộ phận hỗ trợ của Firebase.
Ngôn ngữ trên bảng điều khiển Firebase của tôi được xác định như thế nào?
Chế độ cài đặt ngôn ngữ cho bảng điều khiển của Firebase dựa trên ngôn ngữ đã chọn trong phần cài đặt Tài khoản Google của bạn.
Để thay đổi lựa chọn ưu tiên về ngôn ngữ, hãy xem phần Thay đổi ngôn ngữ.
Bảng điều khiển của Firebase hỗ trợ các ngôn ngữ sau:
- Tiếng Anh
- Tiếng Bồ Đào Nha (Brazil)
- Tiếng Pháp
- Tiếng Đức
- Tiếng Indonesia
- Tiếng Nhật
- Tiếng Hàn
- Tiếng Nga
- Tiếng Trung giản thể
- Tiếng Tây Ban Nha
- Tiếng Trung phồn thể
Bảng điều khiển của Firebase hỗ trợ những vai trò và quyền nào?
Bảng điều khiển của Firebase và bảng điều khiển Google Cloud sử dụng cùng các vai trò và quyền cơ bản. Tìm hiểu thêm về các vai trò và quyền trong tài liệu về IAM của Firebase.
Firebase hỗ trợ các vai trò cơ bản (cơ bản) của Chủ sở hữu, Người chỉnh sửa và Người xem:
- Chủ sở hữu của dự án có thể thêm các thành viên khác vào dự án, thiết lập nội dung tích hợp (dự án liên kết với các dịch vụ như BigQuery hoặc Slack) và có toàn quyền chỉnh sửa dự án.
- Người chỉnh sửa dự án có toàn quyền chỉnh sửa dự án.
- Người xem của dự án chỉ có quyền đọc đối với dự án đó. Xin lưu ý rằng bảng điều khiển của Firebase hiện không ẩn/tắt các chế độ chỉnh sửa giao diện người dùng đối với Người xem dự án, nhưng những thao tác này sẽ không thực hiện được đối với những thành viên trong dự án được chỉ định vai trò Người xem.
Firebase cũng hỗ trợ:
- Các vai trò được xác định trước của Firebase – Các vai trò dành riêng cho Firebase được chọn lọc 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 của Chủ sở hữu, Người chỉnh sửa và Người xem.
- Vai trò tuỳ chỉnh – Các vai trò IAM được tuỳ chỉnh toàn bộ mà bạn tạo để điều chỉnh một nhóm quyền sao cho đáp ứng các yêu cầu cụ thể của tổ chức.
Giá
Những sản phẩm nào được trả tiền? Những nền tảng nào không mất phí?
Các sản phẩm cơ sở hạ tầng có tính phí của Firebase là Cơ sở dữ liệu theo thời gian thực, Cloud Storage cho Firebase, Chức năng đám mây, Lưu trữ, Phòng thử nghiệm và tính năng xác thực điện thoại. Chúng tôi cung cấp một bậc không mất 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í: Analytics, Gửi thông báo 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, Đường liên kết động và Báo cáo sự cố. Việc sử dụng các sản phẩm này chỉ phải tuân theo các chính sách kiểm soát lưu lượng truy cập của sản phẩm (ví dụ: hạn mức, quyền truy cập hợp lý và các biện pháp bảo vệ dịch vụ khác) trong tất cả các gói, trong đó có gói tia 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 không mất phí.
Firebase có cung cấp tín dụng dùng thử miễn phí cho các sản phẩm có tính phí không?
Bạn có thể sử dụng các dịch vụ có tính 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, trong đó có 300 USD tín dụng thanh toán miễn phí trên đám mây để khám phá cũng như đánh giá các sản phẩm và 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 một tài khoản thanh toán Dùng thử miễn phí Cloud. Mọi dự án Firebase sử dụng tài khoản thanh toán đó đều sẽ sử dụng Gói giá linh hoạt 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 qua đám mây dùng thử miễn phí này không cho phép chúng tôi tính phí bạn. Bạn sẽ không bị tính phí trừ phi 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 Bản dùng thử miễn phí qua đám mây lên tài khoản có tính phí. Bạn có thể nâng cấp lên tài khoản trả phí bất cứ 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 các khoản tín dụng còn lại (trong khoảng thời gian 90 ngày).
Sau khi hết hạn dùng thử miễn phí, bạn cần hạ cấp dự án của mình xuống gói giá của Spark hoặc thiết lập gói giá linh hoạt trong bảng điều khiển của Firebase để tiếp tục sử dụng dự án Firebase của mình.
Tìm hiểu thêm về Bản dùng thử miễn phí Google Cloud.
Làm cách nào để biết gói giá nào phù hợp với tôi?
Gói giá Spark
Gói Spark của chúng tôi là một nơi tuyệt vời để bạn phát triển ứng dụng mà không tốn phí. Bạn có thể sử dụng mọi tính năng miễn phí của Firebase (Analytics, Trình soạn thông báo, Crashlytics, v.v.) và số lượng lớn các tính năng có tính phí của chúng tôi dành cho cơ sở hạ tầng. Tuy nhiên, nếu bạn vượt quá tài nguyên của gói Spark trong một tháng, thì ứ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, bạn sẽ không dùng được các tính năng của Google Cloud khi dùng gói Spark.
Gói giá linh hoạt
Gói linh hoạt của chúng tôi được thiết kế cho các ứng dụng phát hành công khai. Gói linh hoạt cũng giúp bạn mở rộng ứng dụng của mình bằng các tính năng có tính phí của Google Cloud. Bạn chỉ phải trả tiền cho những tài nguyên mình sử dụng, cho phép bạn mở rộng quy mô theo nhu cầu. Chúng tôi luôn nỗ lực đưa mức giá của Gói linh hoạt lên mức cạnh tranh với các nhà cung cấp dịch vụ đám mây hàng đầu trong ngành.
Làm cách nào để giám sát việc sử dụng và thanh toán?
Bạn có thể theo dõi mức sử dụng tài nguyên của dự án trong bảng điều khiển của Firebase trên bất kỳ trang tổng quan nào sau đây:
- Trang tổng quan chung về Mức sử dụng và thanh toán ở cấp dự án
- Trang tổng quan Sử dụng xác thực (dành riêng cho các trường hợp xác thực Điện thoại)
- Trang tổng quan về Mức sử dụng của Cloud Firestore
- Trang tổng quan về Mức sử dụng chức năng của Cloud
- Trang tổng quan về Mức sử dụng Cloud Storage
- Trang tổng quan về Mức sử dụng lưu trữ
- Trang tổng quan Mức sử dụng cơ sở dữ liệu theo thời gian thực
Điều gì đã xảy ra với gói giá Flame?
Vào tháng 1 năm 2020, chúng tôi đã loại bỏ gói giá của Flame (25 USD/tháng cho hạn mức bổ sung) khỏi các lựa chọn đăng ký mới. Người dùng gói hiện tại đã được gia hạn
để di chuyển dự án của họ khỏi gói Flame.
Vào tháng 2 năm 2022, các dự án còn lại trong gói giá của Flame đã được hạ cấp xuống gói giá Spark.
Theo đó,
- Các dự án hiện có của gói Spark và Blaze cũng như mọi dự án mới đều không thể chuyển sang hoặc đăng ký gói Flame nữa.
- Nếu bạn đã chuyển một dự án hiện có của gói Flame sang một gói giá khác, thì dự án đó sẽ không thể quay lại gói Flame.
- Những dự án bị hạ cấp xuống gói Spark có thể được nâng cấp lên gói linh hoạt để tiếp tục sử dụng các dịch vụ có tính phí bổ sung.
- Nội dung đề cập đến gói Flame đã bị xoá khỏi tài liệu.
Bạn có câu hỏi nào khác về việc ngừng sử dụng gói Flame không? Hãy đọc một số câu hỏi thường gặp khác dưới đây.
Bạn muốn tìm hiểu về các gói giá khác do Firebase cung cấp? Hãy truy cập trang 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 một gói giá khác, bạn có thể thực hiện việc đó trong bảng điều khiển của Firebase cho dự án của mình.
Câu hỏi thường gặp khác về việc ngừng sử dụng gói Flame
Tôi có một dự án, quy trình hoặc mô hình kinh doanh dựa vào chi phí Firebase cố định. Tôi nên làm gì?
Hãy đăng ký gói Giá linh hoạt và nhớ thiết lập thông báo về ngân sách.
Tôi có được cấp quyền truy cập đặc biệt để tạo các dự án mới trong gói Flame không?
Không, Firebase không 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 sang một gói giá khác. Làm cách nào để chuyển về lại?
Bạn không thể chuyển sang gói Flame được nữa. Để sử dụng các dịch vụ do gói Flame cung cấp, hãy đảm bảo bạn đang sử dụng Gói giá linh hoạt và cân nhắc việc thiết lập cảnh báo về ngân sách cho dự án.
Dự án của tôi đã tự động chuyển sang một gói giá khác trong quá trình 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 mức bổ sung vượt quá hạn mức được cung cấp trong gói Spark, bạn cần nâng cấp dự án lên gói giá linh hoạt.
Tại sao gói Flame lại bị gỡ bỏ?
Trong những năm qua, chúng tôi đã nhận thấy nhu cầu sử dụng gói Ngọn lửa ngày càng giảm, đồng thời hầu hết dự án sử dụng gói này chưa hết giá trị. Việc duy trì gói giá này thường không tiết kiệm chi phí. Chúng tôi cảm thấy có thể phục vụ mọi người tốt hơn nếu có nguồn lực được phân bổ cho các sáng kiến khác của Firebase.
Mức sử dụng không tính phí trong gói Blaze khác với mức sử dụng không tốn phí trong gói tia lửa như thế nào?
Mức sử dụng không tốn phí trong gói linh hoạt được tính theo ngày. Hạn mức sử dụng cũng khác với gói Spark cho Chức năng đám mây, xác thực điện thoại và Phòng thử nghiệm.
Đối với Cloud Functions, mức sử dụng miễn phí trong Gói linh hoạt được tính ở cấp tài khoản thanh toán Cloud, chứ không phải ở cấp dự án và có các hạn mức sau:
- 2 triệu lệnh gọi/tháng
- 400 nghìn GB-giây/tháng
- 200 nghìn giây trên CPU/tháng
- 5 GB lượng đầu ra vào mạng/tháng
Để xác thực điện thoại, mức sử dụng không tốn phí trong gói linh hoạt sẽ được tính hằng tháng.
Đối với Phòng thử nghiệm, mức sử dụng miễn phí trong gói linh hoạt có các hạn mức sau:
- 30 phút sử dụng thiết bị thực/ngày
- 60 phút trên thiết bị ảo/ngày
Hạn mức sử dụng không tốn phí có được đặt lại khi tôi thay đổi từ gói tia sáng sang gói linh hoạt không?
Việc sử dụng không mất phí của gói Spark được đưa vào gói linh hoạt. Mức sử dụng không tốn phí sẽ không được đặt lại khi chuyển sang gói linh hoạt.
"Kết nối cơ sở dữ liệu đồng thời" là gì?
Việc kết nối đồng thời tương đương với một thiết bị di động, thẻ 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 dụng giới hạn cố định đối với số lượng kết nối đồng thời đến cơ sở dữ liệu của ứng dụng. Những giới hạn này được áp dụng để bảo vệ cả Firebase và người dùng khỏi hành vi sai trái.
Giới hạn của gói tia lửa là 100 và không thể tăng lên. Các gói Flame và Blaze có giới hạn tối đa là 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, 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 Mở rộng quy mô bằng nhiều cơ sở dữ liệu.
Điều gì xảy ra nếu tôi vượt quá hạn mức bộ nhớ của Gói thu nhỏ hoặc hạn mức tải xuống của Cơ sở dữ liệu theo thời gian thực?
Để đưa ra mức giá mà bạn có thể dự đoán, chúng tôi sẽ giới hạn đối với những tài nguyên mà bạn có trong các gói tia sáng. Điều này có nghĩa là khi bạn vượt quá hạn mức của gói trong một tháng bất kỳ, ứng dụng của bạn sẽ bị tắt để ngăn việc sử dụng thêm tài nguyên và phát sinh thêm phí.
Đ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 thu nhỏ cho Cơ sở dữ liệu theo thời gian thực?
Khi ứng dụng của bạn đạt đến giới hạn đồng thời trong 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 cho những người dùng đã kết nối.
Tính năng tích hợp của Firebase với Google Cloud hoạt động như thế nào?
Firebase được tích hợp chặt chẽ 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 vào cùng dự án đó từ bảng điều khiển của Firebase hoặc bảng điều khiển Google Cloud. Cụ thể:
- Một số sản phẩm của Firebase được Google Cloud trực tiếp sao lưu, chẳng hạn như Cloud Storage cho Firebase. Danh sách sản phẩm được Google Cloud hỗ trợ sẽ tiếp tục tăng lên theo thời gian.
- Nhiều chế độ cài đặt của bạn, bao gồm cả cộng tác viên và thông tin thanh toán, sẽ được Firebase và Google Cloud chia sẻ. Việc bạn sử dụng cả Firebase và Google Cloud xuất hiện trên cùng một hoá đơn.
Ngoài ra, khi nâng cấp lên Gói linh hoạt, bạn có thể sử dụng bất kỳ Cơ sở hạ tầng dưới dạng dịch vụ và API nào của Google Cloud ngay trong dự án Firebase của mình, với mức giá tiêu chuẩn của Google Cloud. 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 bài viết Liên kết BigQuery với Firebase.
Việc sử dụng Google Cloud với Firebase mang lại nhiều lợi ích giúp tăng cường bảo mật, cải thiện độ trễ và tiết kiệm thời gian (so với các dịch vụ đám mây khác không cùng đặt). Hãy khám phá trang web của Google Cloud để biết thêm thông tin chi tiết.
Điều gì sẽ xảy ra với dự án Firebase của tôi nếu tôi thêm hoặc xoá tài khoản thanh toán cho dự án đó trong bảng điều khiển Google Cloud?
Nếu bạn thêm tài khoản thanh toán Cloud vào một dự án trong bảng điều khiển Google Cloud, thì dự án đó cũng sẽ tự động được nâng cấp lên gói Firebase linh hoạt nếu dự án đó hiện đang có trong gói Spark.
Ngược lại, nếu một tài khoản thanh toán Cloud hiện đang hoạt động bị xoá khỏi một dự án trong bảng điều khiển Google Cloud, thì dự án đó sẽ được hạ cấp xuống gói Firebase Spark.
Tôi có thể nâng cấp, hạ cấp hoặc huỷ bất cứ lúc nào không?
Có, bạn có thể nâng cấp, hạ cấp hoặc huỷ bất cứ lúc nào. Xin lưu ý rằng chúng tôi không hoàn tiền theo tỷ lệ đối với việc hạ cấp hoặc huỷ gói thuê bao. Điều này có nghĩa là nếu hạ cấp hoặc huỷ trước khi kết thúc kỳ thanh toán, thì bạn vẫn phải thanh toán cho phần còn lại của tháng.
Tôi sẽ nhận được loại hỗ trợ nào?
Tất cả ứng dụng Firebase, bao gồm cả những ứng dụng dùng gói không mất phí, đều được nhân viên Firebase hỗ trợ qua email trong giờ làm việc tại Hoa Kỳ Thái Bình Dương. Tất cả tài khoản đều được hỗ trợ không giới hạn đối với các vấn đề liên quan đến việc thanh toán, vấn đề liên quan đến tài khoản, câu hỏi về 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 cho gói linh hoạt không?
Không, bạn hiện không thể giới hạn mức sử dụng gói linh hoạt. Chúng tôi đang đánh giá các phương án hỗ trợ giới hạn sử dụng gói linh hoạt.
Người dùng linh hoạt có thể xác định ngân sách cho dự án hoặc tài khoản của mình và nhận thông báo khi mức chi tiêu gần đạt đến các hạn mức đó. Tìm hiểu cách thiết lập cảnh báo về ngân sách.
Sao lưu tự động là gì? Google có cung cấp tính năng 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 những khách hàng sử dụng gói Giá linh hoạt của chúng tôi. Tính năng này sao lưu dữ liệu của bạn trong Cơ sở dữ liệu theo thời gian thực Firebase 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 hỗ trợ sao lưu hằng giờ.
Bạn có cung cấp chiết khấu theo hình thức nguồn mở, phi lợi nhuận hoặc mang tính giáo dục không?
Mọi cá nhân hoặc tổ chức đều có thể sử dụng gói Spark của chúng tôi, bao gồm cả tổ chức phi lợi nhuận, trường học và dự án nguồn mở. Vì các gói này đã có hạn mức rất lớn, nên chúng tôi không cung cấp gói hoặc chiết khấu đặ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á, dịch vụ hỗ trợ hay dịch vụ lưu trữ cơ sở hạ tầng chuyên dụng không?
Gói linh hoạt của chúng tôi phù hợp với các doanh nghiệp thuộc mọi quy mô. SLA của chúng tôi đáp ứng hoặc vượt quá tiêu chuẩn ngành về cơ sở hạ tầng đám mây. Tuy nhiên, chúng tôi hiện không cung cấp dịch vụ hỗ trợ, giá cả hoặc hợp đồng dành cho doanh nghiệp, cũng như không cung cấp dịch vụ lưu trữ cơ sở hạ tầng chuyên dụng (tức là lắp đặt tại cơ sở hạ tầng riêng) cho những dịch vụ như Cơ sở dữ liệu theo thời gian thực. Chúng tôi đang nỗ lực bổ sung một số tính năng trong số này.
Bạn có cung cấp giá đặc biệt không? Tôi chỉ muốn trả tiền theo mức dùng cho một hoặc hai tính năng.
Chúng tôi cung cấp giá đặc biệt trong gói linh hoạt, trong đó bạn chỉ phải thanh toán cho các tính năng mà bạn sử dụng.
Các gói Firebase có tính phí hoạt động như thế nào với Google Ads? Có khoản tín dụng quảng cáo miễn phí nào với gói trả phí không?
Các gói giá trong Firebase tách biệt với Google Ads, vì vậy, sẽ không có khoản tín dụng quảng cáo nào bị tính phí. Là nhà phát triển Firebase, bạn có thể "liên kết" tài khoản Google Ads của mình với Firebase để hỗ trợ tính năng theo dõi lượt chuyển đổi.
Bạn có thể quản lý tất cả các chiến dịch quảng cáo ngay trong Google Ads, còn việc thanh toán cho Google Ads được quản lý trên bảng điều khiển Google Ads.
Giá của Chức năng đám mây
Tại sao tôi cần có một tài khoản thanh toán để sử dụng Chức năng đám mây cho Firebase?
Chức năng đám mây cho Firebase hoạt động dựa trên một số dịch vụ có tính phí của Google. Việc triển khai chức năng mới với Firebase CLI 11.2.0 trở lên dựa vào Cloud Build và Artifact Registry. Các quy trình triển khai cho các phiên bản cũ hơn sử dụng Cloud Build theo cách tương tự, nhưng hãy dựa vào Container Registry (Sổ đăng ký vùng chứa) và Cloud Storage (Bộ nhớ đám mây) để lưu trữ thay vì Artifact Registry. Bạn sẽ bị tính phí sử dụng các dịch vụ này ngoài mức giá hiện tại.
Không gian lưu trữ cho Firebase CLI 11.2.0 trở lên
Artifact Registry cung cấp các vùng chứa mà hàm chạy trong đó. Artifact Registry cung cấp 500 MB đầu tiên miễn phí, vì vậy, lần triển khai hàm đầu tiên của bạn có thể không phải chịu phí. Trên ngưỡng đó, mỗi GB dung lượng lưu trữ bổ sung sẽ được tính phí ở mức 0,1 USD/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 hàm được triển khai cho phiên bản cũ hơn, container Registry (Sổ đăng ký vùng chứa) sẽ cung cấp các vùng chứa mà các hàm chạy trong đó. Bạn sẽ được lập hoá đơn cho từng vùng chứa cần thiết để triển khai hàm. Bạn có thể nhận thấy các khoản phí nhỏ cho mỗi vùng chứa được lưu trữ, ví dụ: 1 GB dung lượng lưu trữ được tính phí ở mức 0,026 USD mỗi tháng.
Để hiểu thêm về việc hoá đơn của bạn có thể thay đổi như thế nào, vui lòng xem lại những điều sau
- Giá của Cloud Functions: cấp miễn phí hiện có là không thay đổi.
- Giá của Cloud Build: Cloud Build cung cấp cấp miễn phí.
- Giá của Artifact Registry.
- Giá đăng ký vùng chứa.
Chức năng đám mây cho Firebase có sử dụng miễn phí không?
Có. Trong gói linh hoạt, Cloud Functions cung cấp một cấp miễn phí cho các lệnh gọi, thời gian điện toán và lưu lượng truy cập Internet. Chúng tôi cung cấp miễn phí 2.000.000 lệnh gọi đầu tiên, 400.000 GB-giây, 200.000 giây CPU và 5 GB lưu lượng ra Internet ra ngoài. Bạn sẽ chỉ bị tính phí cho mức sử dụng vượt các ngưỡng đó.
Sau 500 MB dung lượng lưu trữ miễn phí đầu tiên, mỗi hoạt động triển khai sẽ phải chịu các khoản phí có quy mô nhỏ đối với không gian lưu trữ dùng cho vùng chứa của hàm. Nếu quá trình phát triển phụ thuộc vào việc triển khai các hàm để kiểm thử, thì bạn có thể giảm thiểu chi phí hơn nữa bằng cách sử dụng Bộ công cụ mô phỏng cục bộ Firebase trong quá trình phát triển.
Xem Gói giá của Firebase và trường hợp ví dụ về Giá của Cloud Functions.
Firebase có dự định tăng hạn mức và giới hạn cho chức năng đám mây cho Firebase không?
Không. Chúng tôi không có kế hoạch thay đổi hạn mức, ngoại trừ việc xoá 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 đến hạn mức bản dựng hằng ngày là 120 phút, bạn sẽ phải trả phí theo các điều khoản của Gói giá linh hoạt. Hãy xem bài viết Hạn mức và giới hạn.
Tôi có thể nhận khoản tín dụng trị giá 300 USD của Google Cloud không?
Có, bạn có thể tạo một tài khoản thanh toán Cloud trong bảng điều khiển Google Cloud để nhận khoản tín dụng 300 USD, sau đó liên kết tài khoản thanh toán Cloud đó với một dự án Firebase.
Tìm hiểu thêm về tín dụng Google Cloud tại đây.
Xin lưu ý rằng nếu làm như vậy, bạn phải thiết lập Gói giá linh hoạt trong bảng điều khiển của Firebase để dự án của bạn có thể tiếp tục hoạt động sau khi dùng hết khoản tín dụng 300 USD.
Tôi muốn tham gia một lớp học lập trình để tìm hiểu về Firebase. Bạn có thể cung cấp cho tôi một tài khoản thanh toán tạm thời không?
Không, rất tiếc. Bạn có thể sử dụng trình mô phỏng Firebase để phát triển mà không cần có tài khoản thanh toán Cloud. Ngoài ra, hãy thử đăng ký dùng thử miễn phí Google Cloud. Nếu bạn vẫn gặp vấn đề khi thanh toán hoá đơn do thay đổi này, hãy liên hệ với Nhóm hỗ trợ Firebase.
Tôi lo mình sẽ phải tiêu hết một hóa đơn khổng lồ.
Bạn có thể thiết lập thông báo về 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 cho số lượng thực thể đã tính phí được tạo cho từng hàm. Để nắm được cách tính chi phí cho các trường hợp thông thường, hãy xem ví dụ về Định giá của các hàm Cloud.
Làm cách nào để kiểm tra phí thanh toán hiện tại?
Xem trang tổng quan Mức sử dụng và thanh toán trong bảng điều khiển của Firebase.
Tôi sử dụng Tiện ích Firebase. Tôi có cần tạo tài khoản thanh toán không?
Có. Do các tiện ích sử dụng Chức năng đám mây, các tiện ích sẽ chịu cùng mức phí như các chức năng khác.
Để sử dụng các tiện ích, bạn cần nâng cấp lên gói giá của BigQuery. Ngoài mọi khoản phí liên quan đến việc sử dụng các dịch vụ của Firebase, bạn sẽ phải trả một khoản phí nhỏ (thường là khoảng 0,01 USD mỗi tháng) cho các tài nguyên Firebase mà mỗi tiện ích bạn cài đặt (ngay cả khi chúng không được sử dụng).
Giá Cloud Storage cho Firebase
Làm cách nào để dự đoán số tiền tôi sẽ phải thanh toán cho hoạt động tải lên và tải xuống?
Truy cập trang Giá Firebase và sử dụng Công cụ tính gói linh hoạt. Công cụ tính liệt kê tất cả các loại mức sử dụng cho Cloud Storage cho Firebase.
Dùng thanh trượt để nhập mức sử dụng dự kiến của bộ chứa Bộ nhớ. Công cụ tính sẽ ước tính hoá đơn hằng tháng của bạn.
Điều gì sẽ xảy ra nếu tôi vượt quá hạn mức tải lên, tải xuống hoặc giới hạn bộ nhớ liên quan đến Cloud Storage cho Firebase?
Khi bạn vượt quá hạn mức dành cho Cloud Storage trong một dự án thuộc gói Spark, kết quả sẽ phụ thuộc vào loại giới hạn mà bạn vượt quá:
- Nếu vượt quá giới hạn GB được lưu trữ, bạn sẽ không thể lưu trữ thêm dữ liệu nào 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 một gói cung cấp thêm dung lượng lưu trữ hoặc không gian lưu trữ không giới hạn.
- Nếu bạn vượt quá hạn mức GB đã tải xuống, thì ứng dụng của bạn sẽ không thể tải thêm dữ liệu xuống cho đến ngày tiếp theo (bắt đầu từ nửa đêm theo giờ Thái Bình Dương tại Hoa Kỳ), trừ phi bạn nâng cấp lên một gói có giới hạn ít hạn chế hơn hoặc không có giới hạn.
- Nếu vượt quá giới hạn hoạt động tải lên hoặc tải xuống, thì ứng dụng của bạn sẽ không thể tải thêm dữ liệu lên hoặc tải xuống thêm dữ liệu cho đến ngày tiếp theo (bắt đầu từ nửa đêm theo giờ Thái Bình Dương tại Hoa Kỳ), trừ phi bạn nâng cấp lên một gói có giới hạn thấp hơn hoặc không có giới hạn.
Quyền 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?
Hãy xem trang Quyền riêng tư và bảo mật trong Firebase.
Các 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 Analytics không?
Có. Tính năng này hiện chỉ dành cho iOS nhưng có thể thay đổi trong tương lai. SDK nền tảng Firebase
của Apple có khung
FirebaseCoreDiagnostics
theo mặc định. Firebase sử dụng khung này để thu thập thông tin về việc sử dụng và chẩn đoán
SDK nhằm giúp ưu tiên cải tiến sản phẩm
trong tương lai. FirebaseCoreDiagnostics
là không bắt buộc. Vì vậy, nếu
không muốn gửi nhật ký chẩn đoán Firebase, bạn có thể thực hiện bằng cách
huỷ liên kết thư viện này khỏi ứng dụng của mình. Bạn có thể duyệt xem toàn bộ nguồn, bao gồm cả các giá trị đã ghi lại, trên GitHub
Thử nghiệm A/B
Thử nghiệm A/B: Tôi có thể tạo và chạy bao nhiêu thử nghiệm?
Bạn được phép hiển thị tối đa 300 thử nghiệm cho mỗi dự án, trong đó có thể bao gồm tối đa 24 thử nghiệm đang chạy, các thử nghiệm còn lại ở dạng bản nháp hoặc đã hoàn tất.
Thử nghiệm A/B: Tại sao tôi không thể xem các thử nghiệm của mình sau khi huỷ liên kết và liên kết lại dự án của mình với Google Analytics?
Việc liên kết với một tài sản Google Analytics khác sẽ khiến bạn mất quyền truy cập vào những thử nghiệm mà bạn đã tạo trước đó. Để có lại quyền truy cập vào thử nghiệm trước đó, hãy liên kết lại dự án của bạn với tài sản Google Analytics đã được liên kết khi thử nghiệm được tạo.
Thử nghiệm A/B: Tại sao tôi nhận được thông báo "Dự án chưa đượ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 thông báo cho biết Google Analytics chưa được liên kết, hãy đảm bảo rằng bạn đã có một luồng Analytics cho tất cả ứng dụng trong dự án của mình. Hiện tại, tất cả các ứng dụng trong dự án phải được kết nối với một 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 đang hoạt động trên trang Thông tin chi tiết về chế độ tích hợp Google Analytics trong bảng điều khiển của Firebase. Bạn có thể truy cập vào danh sách này từ phần settingsCài đặt dự án chevron_right Tích hợp chevron_right Google Analytics chevron_right Quản lý.
Bạn có thể giải quyết vấn đề này bằng cách tạo luồng Google Analytics cho bất kỳ ứng dụng nào chưa có luồng Google Analytics. Có một số cách để tạo luồng cho các ứng dụng còn thiếu:
-
Nếu chỉ có một hoặc hai ứng dụng thiếu luồng Google Analytics được liên kết, bạn có thể chọn
một trong những phương pháp sau để thêm luồng Google Analytics:
- Xoá và thêm lại bất kỳ ứng dụng nào không có luồng đang hoạt động trong bảng điều khiển của Firebase.
- Trong Bảng điều khiển Google Analytics, hãy chọn Quản trị, nhấp vào Luồng dữ liệu, sau đó nhấp vào Thêm luồng, thêm thông tin chi tiết về ứng dụng bị thiếu rồi nhấp vào Đăng ký ứng dụng.
-
Nếu bạn thiếu nhiều luồng ứng dụng, thì việc huỷ liên kết và liên kết lại tài sản
Google Analytics 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 phần settings Cài đặt dự án, hãy chọn Tích hợp.
- Trong thẻ Google Analytics, hãy nhấp vào Quản lý để truy cập vào các chế độ cài đặt Firebase và Google Analytics.
- Ghi lại Mã tài sản của Google Analytics và Tài khoản Google Analytics được liên kết.
- Nhấp vào more_vert Lựa chọn khác rồi chọn Huỷ liên kết Analytics khỏi dự án này.
-
Xem cảnh báo mới xuất hiện (đừng lo lắng ở đây; bạn sẽ liên kết lại tài sản đó trong
bước tiếp theo), sau đó nhấp vào
Huỷ liên kết Google Analytics.
Khi huỷ liên kết xong, bạn sẽ được chuyển hướng đến trang Các công cụ tích hợp. - Trong thẻ Google Analytics, hãy nhấp vào Bật để bắt đầu quá trình liên kết lại.
- Chọn tài khoản Analytics của bạn trong danh sách Chọn tài khoản.
-
Bên cạnh mục Tự động tạo tài sản mới trong tài khoản này, hãy nhấp vào
edit Chỉnh sửa và trong danh sách
tài sản Analytics vừa xuất hiện, hãy chọn mã tài sản của bạn.
Bạn sẽ thấy danh sách tất cả ứng dụng trong dự án của mình. Các mục ánh xạ luồng hiện có cho từng ứng dụng sẽ được liệt kê và những ứng dụng chưa có luồng sẽ được tạo cho những ứng dụng đó. - Nhấp vào Bật Google Analytics để liên kết lại tài sản này.
- Nhấp vào Hoàn tất.
Nếu bạn vẫn gặp lỗi khi tạo Thử nghiệm A/B bằng Cấu hình từ xa sau khi thực hiện các bước này, hãy liên hệ với Nhóm hỗ trợ Firebase.
AdMob
AdMob: Tôi có thể liên kết các ứng dụng Windows của mình với Firebase không?
Không, các ứng dụng Windows hiện chưa được hỗ trợ.
AdMob: Tại sao tôi không thể liên kết ứng dụng của mình với AdMob từ bảng điều khiển của Firebase?
Bạn có thể liên kết ứng dụng AdMob với ứng dụng Firebase thông qua bảng điều khiển AdMob. Tìm hiểu cách làm.
AdMob: Tôi cần có những quyền hoặc quyền truy cập nào để liên kết một ứng dụng Firebase với một ứng dụng AdMob?
Để thực hiện việc liên kết này, bạn cần có quyền truy cập sau:
- AdMob: Bạn phải là quản trị viên AdMob.
- Firebase: Bạn phải có quyền
firebase.links.create
, quyền này có trong vai trò Chủ sở hữu và vai trò Quản trị viên trên Firebase. - Google Analytics: Bạn phải có vai trò Chỉnh sửa hoặc vai trò Quản lý người dùng đối với tài sản được liên kết với dự án Firebase. Tìm hiểu thêm.
AdMob: Nhiều người dùng trong cùng một tài khoản AdMob có thể liên kết ứng dụng AdMob với ứng dụng Firebase không?
Đối với tài khoản AdMob nhiều người dùng, người dùng đã tạo mối liên kết đầu tiên với Firebase và chấp nhận Điều khoản dịch vụ của Firebase là người dùng duy nhất có thể tạo mối liên kết mới giữa ứng dụng AdMob và ứng dụng Firebase.
AdMob: Để sử dụng AdMob, tôi nên dùng SDK nào?
Để sử dụng AdMob, hãy luôn sử dụng SDK Quảng cáo của Google trên thiết bị di động như mô tả trong Câu hỏi thường gặp này. Ngoài ra, nếu bạn muốn thu thập chỉ số người dùng cho AdMob, hãy thêm Firebase SDK cho Google Analytics vào ứng dụng của bạn.
- Đối với dự án iOS:
Nhập SDK quảng cáo trên thiết bị di động của Google bằng cách làm theo hướng dẫn trong tài liệu iOS của AdMob. - Đối với dự án Android:
Thêm phần phụ thuộc cho SDK Quảng cáo của Google trên thiết bị di động vào tệpbuild.gradle
của bạn:
implementation 'com.google.android.gms:play-services-ads:23.0.0'
- Đối với các dự án C++ và các dự án Unity: Làm theo hướng dẫn trong tài liệu tương ứng.
Analytics
Analytics: Tại sao bạn nên dùng Google Analytics khi sử dụng các sản phẩm của 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 thông tin chi tiết hữu ích. Bộ công cụ này cho phép bạn xem nhật ký sự kiện trong Crashlytics, mức độ hiệu quả của thông báo trong FCM, hiệu suất của đường liên kết sâu cho Đường liên kết động và dữ liệu về giao dịch mua hàng trong ứng dụng trên Google Play. Tính năng này hỗ trợ tính năng nhắm mục tiêu theo đối tượng nâng cao trong hoạt động cá nhân hoá Cấu hình từ xa, Cấu hình từ xa và nhiều tính năng khác.
Google Analytics hoạt động như một lớp thông minh trong bảng điều khiển của Firebase để cung cấp cho bạn thông tin chi tiết hữu ích hơn về cách phát triển ứng dụng chất lượng cao, gia tăng cơ sở người dùng và kiếm thêm tiền.
Để bắt đầu, hãy đọc tài liệu này.
Analytics: Làm cách nào để kiểm soát cách chia sẻ dữ liệu Analytics của tôi với các phần còn lại của Firebase?
Theo mặc định, dữ liệu của bạn trên Google Analytics sẽ được dùng để cải thiện các tính năng khác của Firebase và Google. Bạn có thể kiểm soát cách chia sẻ dữ liệu Google Analytics trong phần cài đặt dự án bất cứ lúc nào. Tìm hiểu thêm về Chế độ cài đặt chia sẻ dữ liệu.
Analytics: Làm cách nào để cập nhật chế độ cài đặt tài sản Analytics của tôi?
Trên trang Quản trị trong tài sản Google Analytics, bạn có thể cập nhật các chế độ cài đặt tài sản, chẳng hạn như:
- Chế độ cài đặt cách chia sẻ dữ liệu
- Chế độ cài đặt việc giữ lại dữ liệu
- Chế độ cài đặt múi giờ và đơn vị tiền tệ
Để cập nhật chế độ cài đặt tài sản, hãy làm theo các bước sau:
- Trong bảng điều khiển của Firebase, hãy chuyển đến settings > Cài đặt dự án.
- Chuyển đến thẻ Các công cụ tích hợp, rồi nhấp vào Quản lý hoặc Xem mối liên kết trong thẻ Google Analytics.
- Nhấp vào đường liên kết cho tài khoản Google Analytics của bạn để mở phần cài đặt tài khoản và tài sản.
Analytics trong ứng dụng dành cho iOS: Tôi có thể cài đặt Analytics mà không cần tính năng phân bổ quảng cáo và thu thập IDFA không?
Có. Xem trang Định cấu hình việc thu thập và sử dụng dữ liệu để biết thêm chi tiết.
Analytics: Mục Google Analytics có những thay đổi gì trong nội dung cập nhật vào tháng 10 năm 2021?
Bạn có thể xem bản tóm tắt về những thay đổi này trong bài viết Chức năng mới của Google Analytics 4 trong Google Analytics cho Firebase trên Trung tâm trợ giúp của Firebase.
Analytics: Tại sao tôi không thấy dữ liệu Analytics nào trong bảng điều khiển của Firebase sau khi huỷ liên kết Firebase khỏi Google Analytics?
Dữ liệu Analytics nằm trong tài sản Google Analytics chứ không phải trong dự án Firebase. Nếu xoá hoặc huỷ liên kết tài sản đó, thì bạn sẽ không thể truy cập vào dữ liệu Analytics trên Firebase và sẽ thấy trang tổng quan Analytics trống trong bảng điều khiển của Firebase. Xin lưu ý rằng vì dữ liệu vẫn nằm trong tài sản đã liên kết trước đó, nên bạn có thể liên kết lại tài sản đó với Firebase bất cứ lúc nào và xem dữ liệu Analytics trong bảng điều khiển của Firebase.
Việc liên kết một tài khoản Google Analytics hoàn toàn mới (và do đó là một tài sản Google Analytics mới) với dự án Firebase của bạn sẽ dẫn đến một trang tổng quan Analytics trống trong bảng điều khiển của Firebase. Tuy nhiên, nếu tài sản đã liên kết trước đó vẫn tồn tại thì bạn có thể di chuyển dữ liệu hiện có từ tài sản cũ sang tài sản mới.
Analytics: Nếu tài sản Analytics của tôi và dữ liệu của tài sản đã bị xoá, có cách nào để khôi phục tài sản đó không?
Không. Nếu tài sản của bạn đã bị xoá, thì bạn không thể huỷ xoá tài sản hoặc truy xuất dữ liệu Analytics đã thu thập trước đây và được lưu trữ trong tài sản đó.
Nếu muốn bắt đầu sử dụng lại Google Analytics, bạn có thể liên kết một tài sản mới hoặc một tài sản hiện có với dự án Firebase của mình. Bạn có thể thực hiện việc liên kết này trong bảng điều khiển của Firebase hoặc giao diện người dùng Google Analytics. Tìm hiểu thêm về cách liên kết một tài sản Google Analytics với dự án Firebase.
Analytics: Nếu tài sản Analytics của tôi đã bị xoá, tôi có thể liên kết một tài sản Google Analytics mới với dự án Firebase của mình và bắt đầu sử dụng lại Analytics không?
Nếu muốn bắt đầu sử dụng lại Google Analytics, bạn có thể liên kết một tài sản mới hoặc một tài sản hiện có với dự án Firebase của mình. Bạn có thể thực hiện việc liên kết này trong bảng điều khiển của Firebase hoặc giao diện người dùng Google Analytics. Tìm hiểu thêm về cách liên kết một tài sản Google Analytics với dự án Firebase.
Xin lưu ý rằng vì tất cả dữ liệu Analytics đều được lưu trữ trong tài sản (không phải trong dự án Firebase), nên bạn không thể truy xuất dữ liệu Analytics đã thu thập trước đây.
Analytics: Việc xoá tài sản Analytics của tôi sẽ ảnh hưởng như thế nào đến các sản phẩm Firebase hoặc các sản phẩm được tích hợp của Google?
Một số sản phẩm Firebase dựa vào tính năng tích hợp Google Analytics. Nếu tài sản Analytics và dữ liệu của tài sản đó bị xoá, thì những điều sau 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 thấy người dùng không gặp sự cố, nhật ký breadcrumb và/hoặc cảnh báo tốc độ nữa.
- Gửi thông báo qua đám mây và Gửi thông báo trong ứng dụng — Bạn sẽ không thể sử dụng các nhãn nhắm mục tiêu, chỉ số chiến dịch, phân khúc đối tượng và nhãn số liệu phân tích nữa.
- Cấu hình từ xa — Bạn không thể sử dụng cấu hình được nhắm mục tiêu hoặc chế độ Cá nhân hoá nữa.
- Thử nghiệm A/B – Bạn không thể sử dụng Thử nghiệm A/B nữa vì Google Analytics cung cấp phương pháp đo lường thử nghiệm.
- Đường liên kết động – Mọi tính năng dựa vào dữ liệu từ Google Analytics đều sẽ bị gián đoạn.
Ngoài ra, các công cụ tích hợp sau đây sẽ bị ảnh hưởng:
- Bạn không thể xuất dữ liệu của Analytics sang BigQuery được nữa.
- Bạn không thể sử dụng các tính năng tích hợp với Google Ads hoặc các tính năng tích hợp với Google AdMob nữa.
Analytics: Làm cách nào để phân chia những người dùng chưa đáp ứng một số tiêu chí?
Bạn có thể tái hiện vấn đề bằng cách "nhắm mục tiêu theo cách phủ định" đến những người dùng này. Ví dụ: hãy thiết kế lại vấn đề thành "Không hiển thị quảng cáo cho những người đã mua sản phẩm" và hình thành đối tượng gồm những người dùng đó để nhắm đến.
Analytics: Các đối tượng và/hoặc sự kiện được xác định trong giao diện Google Analytics có trong bảng điều khiển của Firebase không?
Đối tượng và thuộc tính người dùng của bạn sẽ được đồng bộ hoá. Đố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ư tính năng phân đoạn và phễu kín. Bạn có thể truy cập trực tiếp vào giao diện Google Analytics thông qua các đường liên kết sâu trên bảng điều khiển của Firebase.
Bạn cũng có thể thực hiện mọi thay đổi mà mình thực hiện trên bảng điều khiển của Firebase 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ợ tính năng xác thực điện thoại?
Tính năng 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 cung cấp thông báo xác minh của chúng tôi một cách đáng tin cậy. Các quốc gia sau có tốc độ giao hàng tốt và sẽ hoạt động tốt để đăng nhập bằng số điện thoại.
Quốc gia | Mã |
---|---|
sau CN | Andorra |
AE (Người quản lý tài khoản) | Các Tiểu Vương quốc Ả Rập Thống nhất |
Lấy nét tự động | Afghanistan |
TL | Antigua và Barbuda |
AL | Albania |
SÁNG | Armenia |
Số đối thủ cạnh tranh | Angola |
Thực tế tăng cường (AR) | Argentina |
AS | Samoa thuộc Hoa Kỳ |
Áo | Áo |
AU | Úc |
AW | Aruba |
AZ (AZ) | Azerbaijan |
Phòng tắm | Bosnia và Herzegovina |
BB | Barbados |
BD | Bangladesh |
Bỉ | Bỉ |
BF | Burkina Faso |
BG (BG) | Bulgaria |
BJ | Benin |
BM (Người quản lý tài khoản) | Bermuda |
BN | Brunei Darussalam |
BO | Bolivia |
BR | Brazil |
BS | Bahamas |
BT | Bhutan |
Đen | Botswana |
BỞI | Belarus |
BZ | Belize |
CA | Canada |
CD | Congo, (Kinshasa) |
CF | Cộng hòa Trung Phi |
CG | Congo (Brazzaville) |
Thuỵ Sĩ | Thuỵ Sĩ |
CI | Bờ biển Ngà |
CK (CK) | Quần đảo Cook |
CL (CL) | Chile |
Campaign Manager | Cameroon |
CO | Colombia |
câu trả lời soạn trước | Costa Rica |
CV | Cabo Verde/Cape Verde |
CW | Curaçao |
CY | Síp |
CZ (Cộng hoà Séc) | Cộng hòa Séc |
Đức | Đức |
DJ | Djibouti |
DK | Đan Mạch |
Tin nhắn trực tiếp | Dominica |
NÊN | Cộng hòa Dominica |
DZ (DZ) | Algeria |
EC | Ecuador |
Ai Cập | Ai Cập |
Tiếng Tây Ban Nha | Tây Ban Nha |
ET | Ethiopia |
Phần Lan | Phần Lan |
âm tính giả | Fiji |
KT | Quần đảo Falkland (Malvinas) |
FM | Liên bang Micronesia |
FO (Phần Lan) | Quần đảo Faroe |
Pháp | Pháp |
BB | Gabon |
TCL | Vương quốc Anh |
GD | Grenada |
GE | Georgia |
BT | Guiana thuộc Pháp |
GG | Guernsey |
chủ đề trò chơi | Ghana |
GI | Gibraltar |
GL | Greenland |
Tổng giám đốc | Gambia |
TĐC | Guadeloupe |
B.thắng | Guinea Xích đạo |
GR | Hy Lạp |
GT (GT) | Guatemala |
Xám | Guyana |
Hong Kong | Hong Kong, Đặc khu hành chính Trung Quốc |
HN (HN) | Honduras |
HR | Croatia |
HT | Haiti |
HU (Đầu phát trung tâm) | Hungary |
giấy tờ tùy thân | Indonesia |
Ireland | Ireland |
IL | Israel |
IM | Đảo Man |
VÀO | Ấn Độ |
IQ (IQ) | Iraq |
CNTT | Ý |
JE (Nhật Bản) | Jersey |
JM | Jamaica |
JO (JO) | Jordan |
JP | Nhật Bản |
KE (KE) | Kenya |
40 | Kyrgyzstan |
KH | Campuchia |
KM | Comoros |
20 | Saint Kitts và Nevis |
Hàn Quốc | Hàn Quốc |
KW (KW) | Kuwait |
Cayman | Quần đảo Cayman |
199 | Kazakhstan |
Los Angeles | Cộng hòa dân chủ nhân dân Lào |
LCDCB | Lebanon |
LC | Saint Lucia |
LI (Nhật Bản) | Liechtenstein |
LK | Sri Lanka |
Tỷ lệ phản hồi | Lesotho |
LT | Lithuania |
LU | Luxembourg |
LV | Latvia |
LY (Ý) | Libya |
MA (MA) | Morocco |
MD | Moldova |
TÔI | Montenegro |
T2 | Saint-Martin (phần thuộc Pháp) |
TĐC | Madagascar |
MK | Cộng hoà Macedonia |
MM | Myanmar |
MN (MN) | Mông Cổ |
MO | Macao, Đặc khu hành chính Trung Quốc |
bệnh đa xơ cứng | Montserrat |
MT | Malta |
MU | Mauritius |
MW | Malawi |
Mexico | Mexico |
Malaysia | Malaysia |
MZ (MZ) | Mozambique |
NA | Namibia |
Bắc Mỹ | New Caledonia |
Hướng Đông Bắc | Niger |
B.thắng | Đảo Norfolk |
NG | Nigeria |
NI (NI) | Nicaragua |
Hà Lan | Hà Lan |
KHÔNG | Na Uy |
Điểm thắng | Nepal |
New Zealand | New Zealand |
OM (OM) | Oman |
PA | Panama |
Chuyên gia sản phẩm | Peru |
PG | Papua New Guinea |
PH | Philippines |
PK | Pakistan |
PL (Bỉ) | Ba Lan |
CHIỀU | Saint Pierre và Miquelon |
PR | Puerto Rico |
PS | Lãnh thổ Palestine |
Tiếng Bồ Đào Nha | Bồ Đào Nha |
PY (Mỹ) | Paraguay |
Đảm bảo chất lượng | Qatar |
V/v | Réunion |
RO | Romania |
RS | Serbia |
Nga | Liên bang Nga |
RW | Rwanda |
STĐ | Ả Rập Xê Út |
SC | Seychelles |
SE | Thụy Điển |
SG | Singapore |
Đá ra ngoài | Saint Helena |
SI | Slovenia |
SK | Slovakia |
SL | Sierra Leone |
Số sê-ri | Senegal |
SR | Suriname |
ST | São Tomé và Príncipe |
SV | El Salvador |
SZ (SZ) | Eswatini (trước kia là Swaziland) |
TC | Quần đảo Turks và Caicos |
TG (TG) | Togo |
TH | Thái Lan |
trưởng nhóm | Đông Timor |
TM | Turkmenistan |
MB | Tonga |
lira Thổ Nhĩ Kỳ (TR) | Thổ Nhĩ Kỳ |
TT (TT) | Trinidad và Tobago |
TW | Đài Loan, Cộng hoà Trung Hoa |
TZ (TZ) | Cộng hòa Thống nhất Tanzania |
UA | Ukraina |
30.000 | Uganda |
Hoa Kỳ | Hoa Kỳ |
UY | Uruguay |
UZ (UZ) | Uzbekistan |
VC | Saint Vincent và Grenadines |
VE | Venezuela (Cộng hoà Bolivar) |
Tỷ lệ thắng/thua | Quần đảo Virgin thuộc Anh |
VI | Quần đảo Virgin, Hoa Kỳ |
Việt Nam | Việt Nam |
WS | Samoa |
Có | Yemen |
YouTube | Mayotte |
Nam Phi | Nam Phi |
ZM | Zambia |
ZW (Quảng cáo tìm kiếm thích ứng) | Zimbabwe |
Xác thực Firebase: Làm cách nào để ngăn chặn hành vi sai trái liên quan đến tin nhắn SMS khi sử dụng tính năng xác thực qua điện thoại?
Để bảo vệ dự án của bạn khỏi việc bơm lưu lượng truy cập qua SMS và hành vi sử dụng API sai mục đích, hãy làm theo các bước sau:
Cân nhắc việc đặt chính sách khu vực SMS
Xem mức sử dụng SMS theo khu vực của bạn.
Tìm các khu vực có rất nhiều SMS được gửi và số lượng rất ít (hoặc không) SMS đã xác minh. Tỷ lệ đã xác minh/đã gửi là tỷ lệ thành công. Tỷ lệ thành công tốt thường trong khoảng 70-85% do SMS không phải là giao thức gửi được đảm bảo và một số khu vực có thể gặp phải tình trạng lạm dụng. Tỷ lệ thành công dưới 50% cho biết có nhiều tin nhắn SMS đã gửi nhưng rất ít lần đăng nhập thành công. Đây là chỉ báo thường gặp về đối tượng xấu và hành vi đẩy lưu lượng truy cập qua tin nhắn SMS.
Sử dụng Chính sách về khu vực gửi tin nhắn SMS để từ chối những khu vực cung cấp dịch vụ SMS có tỷ lệ thành công thấp hoặc chỉ cho phép một số khu vực nếu ứng dụng của bạn chỉ nhằm phân phối ở một số thị trường.
Giới hạn các miền xác thực được uỷ quyền
Sử dụng Trang tổng quan về chế độ cài đặt xác thực để quản lý các miền được uỷ quyền. Theo mặc định, miền localhost
được thêm vào các miền xác thực đã phê duyệt để đơn giản hoá quá trình phát triển. Hãy cân nhắc việc xoá localhost
khỏi các miền được uỷ quyền trong dự án phát hành công khai để ngăn đối tượng xấu chạy mã trên localhost
của chúng truy cập vào dự án phát hành công khai của bạn.
Bật và thực thi tính năng Kiểm tra ứng dụng
Bật tính năng Kiểm tra ứng dụng để giúp bảo vệ dự án của bạn khỏi việc sử dụng API sai mục đích bằng cách chứng thực rằng yêu cầu chỉ đến từ các ứng dụng liên kết với dự án của bạn.
Để sử dụng tính năng Kiểm tra ứng dụng bằng tính năng Xác thực Firebase, bạn phải nâng cấp lên Xác thực Firebase bằng Nền tảng nhận dạng.
Hãy nhớ rằng bạn cần thực thi tính năng Kiểm tra ứng dụng để xác thực trong bảng điều khiển của Firebase (xem xét theo dõi lưu lượng truy cập trước khi thực thi). Ngoài ra, hãy kiểm tra kỹ danh sách trang web được phê duyệt của reCAPTCHA Enterprise để xác thực rằng danh sách này chỉ chứa các trang web chính thức của bạn và danh sách các ứng dụng đã đăng ký cho dự án của bạn trong tính năng Kiểm tra ứng dụng là chính xác.
Xin lưu ý rằng tính năng Kiểm tra ứng dụng giúp chống lại các cuộc tấn công tự động bằng cách xác nhận rằng lệnh gọi đến từ một trong những ứng dụng đã đăng ký của bạn. Chính sách này không ngăn người dùng sử dụng ứng dụng của bạn theo cách ngoài ý muốn (ví dụ: bắt đầu rồi không bao giờ hoàn tất quy trình đăng nhập để tạo tin nhắn SMS đã gửi).
Xác thực Firebase: Trong ứng dụng Android, tại sao tôi gặp lỗi sau:
Google sign in failed
?
Google sign in failed
Hãy làm 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 gặp lỗi sau đây:
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 tính năng đăng nhập Google được bật đúng cách dưới dạng một nhà cung cấp dịch vụ xác thực:
Trong bảng điều khiển của Firebase, hãy mở phần Xác thực.
Trong thẻ Phương thức đăng nhập, hãy tắt rồi bật lại phương thức đăng nhập Google (ngay cả khi phương thức này đã được bật):
Mở phương thức đăng nhập Google, vô hiệu hoá phương thức đó rồi nhấp vào Lưu.
Mở lại phương thức đăng nhập Google, bật phương thức này rồi nhấp vào Lưu.
Đảm bảo rằng ứng dụng của bạn đang sử dụng tệp cấu hình Firebase mới nhất (
google-services.json
).
Lấy tệp cấu hình của ứng dụng.Kiểm tra xem bạn có còn gặp lỗi hay không. Nếu có, hãy chuyển sang bước khắc phục sự cố tiếp theo.
Đảm bảo có các ứng dụng OAuth 2.0 cơ bản bắt buộc.
Trên trang Thông tin xác thực của bảng điều khiển Google Cloud, hãy xem phần Mã ứng dụng khách OAuth 2.0.
Nếu ứng dụng OAuth 2.0 không xuất hiện (và bạn đã hoàn thành tất cả các bước khắc phục sự cố nêu trên), hãy liên hệ với Nhóm hỗ trợ.
Xác thực Firebase: Trong ứng dụng nền tảng Apple, tại sao tôi gặp lỗi sau:
You must specify <clientID> in <GIDConfiguration>
?
You must specify <clientID> in <GIDConfiguration>
Hãy làm 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 gặp lỗi sau đây:
You must specify |clientID| in |GIDConfiguration|
Đảm bảo rằng tính năng đăng nhập Google được bật đúng cách dưới dạng một nhà cung cấp dịch vụ xác thực:
Trong bảng điều khiển của Firebase, hãy mở phần Xác thực.
Trong thẻ Phương thức đăng nhập, hãy tắt rồi bật lại phương thức đăng nhập Google (ngay cả khi phương thức này đã được bật):
Mở phương thức đăng nhập Google, vô hiệu hoá phương thức đó rồi nhấp vào Lưu.
Mở lại phương thức đăng nhập Google, bật phương thức này rồi nhấp vào Lưu.
Đảm bảo rằng ứng dụng của bạn đang sử dụng tệp cấu hình Firebase mới nhất (
GoogleService-Info.plist
).
Lấy tệp cấu hình của ứng dụng.Kiểm tra xem bạn có còn gặp lỗi hay không. Nếu có, hãy chuyển sang bước khắc phục sự cố tiếp theo.
Đảm bảo có các ứng dụng OAuth 2.0 cơ bản bắt buộc.
Trên trang Thông tin xác thực của bảng điều khiển Google Cloud, hãy xem phần Mã ứng dụng khách OAuth 2.0.
Nếu ứng dụng OAuth 2.0 không xuất hiện (và bạn đã hoàn thành tất cả các bước khắc phục sự cố nêu trên), hãy liên hệ với Nhóm hỗ trợ.
Xác thực Firebase: Trong ứng dụng web của tôi, tại sao tôi gặp lỗi sau:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
?
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
Hãy làm 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 gặp lỗi sau đây:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
Đảm bảo rằng tính năng đăng nhập Google được bật đúng cách dưới dạng một nhà cung cấp dịch vụ xác thực:
Trong bảng điều khiển của Firebase, hãy mở phần Xác thực.
Trong thẻ Phương thức đăng nhập, hãy tắt rồi bật lại phương thức đăng nhập Google (ngay cả khi phương thức này đã được bật):
Mở phương thức đăng nhập Google, vô hiệu hoá phương thức đó rồi nhấp vào Lưu.
Mở lại phương thức đăng nhập Google, bật phương thức này rồi nhấp vào Lưu.
Ngoài ra, trong cấu hình của nhà cung cấp dịch vụ đăng nhập Google ở mục Xác thực, hãy đảm bảo rằng mã ứng dụng khách OAuth và khoá bí mật khớp với ứng dụng web hiển thị trên trang Thông tin xác thực của bảng điều khiển Google Cloud (xem trong phần Mã ứng dụng khách OAuth 2.0).
Xác thực Firebase: Trong ứng dụng web của tôi, tại sao không đăng nhập được bằng tính năng chuyển hướng và gặp lỗi sau:
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
?
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
Hãy làm 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 gặp lỗi sau đây:
This domain YOUR_REDIRECT_DOMAIN is not authorized to run this operation.
Lỗi này rất có thể xảy ra do miền chuyển hướng của bạn không được liệt kê là miền được ủy quyền cho tính năng Xác thực Firebase hoặc khoá API mà bạn sử dụng với Dịch vụ xác thực Firebase không hợp lệ.
Trước tiên, hãy đảm bảo rằng YOUR_REDIRECT_DOMAIN có trong danh sách các miền được uỷ quyền cho dự án Firebase của bạn. Nếu miền chuyển hướng của bạn đã được liệt kê trong danh sách đó, hãy tiếp tục khắc phục khoá API không hợp lệ.
Theo mặc định, SDK JS của phương thức xác thực Firebase dựa vào khoá API cho dự án Firebase được gắn nhãn Browser key
, đồng thời sử dụng khoá này để xác minh rằng URL chuyển hướng đăng nhập là hợp lệ theo danh sách miền được uỷ quyền.
Quy trình xác thực lấy khoá API này tuỳ thuộc vào cách bạn truy cập SDK xác thực:
Nếu bạn sử dụng Trình trợ giúp xác thực do máy chủ lưu trữ cung cấp để đăng nhập người dùng bằng SDK JS của phương thức xác thực, thì Firebase sẽ tự động lấy khoá API của bạn bằng phần còn lại của cấu hình Firebase mỗi khi bạn triển khai tính năng Lưu trữ Firebase. Hãy đảm bảo
authDomain
trong ứng dụng webfirebaseConfig
của bạn được định cấu hình đúng để sử dụng một trong các miền cho trang web Lưu trữ đó. Bạn có thể xác minh điều này bằng cách truy cậphttps://authDomain__/firebase/init.json
và kiểm tra xemprojectId
có khớp với thông tin đó từfirebaseConfig
của bạn hay không.Nếu tự lưu trữ mã đăng nhập, bạn có thể sử dụng tệp
__/firebase/init.json
để cung cấp cấu hình Firebase cho trình trợ giúp Chuyển hướng SDK Xác thực JS tự lưu trữ. Khoá API vàprojectId
liệt kê trong tệp cấu hình này phải khớp với ứng dụng webfirebaseConfig
của bạn.
Kiểm tra để đảm bảo khoá API này không bị xoá: Chuyển đến bảng API và dịch vụ > Thông tin xác thực trong bảng điều khiển Google Cloud, nơi liệt kê tất cả khoá API cho dự án của bạn.
Nếu
Browser key
chưa bị xoá, hãy kiểm tra những việc sau:Đảm bảo API Xác thực Firebase có trong danh sách các API được phép để truy cập vào khoá (tìm hiểu thêm về các quy định hạn chế API đối với khoá API).
Nếu bạn tự lưu trữ mã đăng nhập, hãy đảm bảo khoá API được liệt kê trong tệp
__/firebase/init.json
khớp với khoá API trong bảng điều khiển Cloud. Sửa khoá trong tệp (nếu cần), sau đó triển khai lại ứng dụng.Nếu
Browser key
đã bị xoá, bạn có thể yêu cầu Firebase tạo một khoá API mới cho bạn: Trong bảng điều khiển của Firebase, hãy chuyển đến settings > Cài đặt dự án, sau đó nhấp vào ứng dụng web của bạn trong phần Ứng dụng của bạn. Thao tác này sẽ tự động tạo một khoá API mà bạn có thể nhìn thấy trong phần Thiết lập và cấu hình SDK cho ứng dụng web của bạn.
Xin lưu ý rằng trong bảng điều khiển Cloud, khoá API mới này sẽ không có tên là
Browser key
; thay vào đó, khoá này sẽ giống với biệt hiệu của Ứng dụng web Firebase. Nếu bạn quyết định thêm các hạn chế về API vào khoá API mới này, hãy đảm bảo rằng API Xác thực Firebase có trong danh sách các API được phép.Sau khi tạo khoá API mới, hãy hoàn tất các bước áp dụng bên dưới:
Nếu bạn sử dụng URL lưu trữ đặt trước, hãy triển khai lại ứng dụng của bạn lên Firebase để ứng dụng có thể tự động lấy khoá API mới với phần còn lại của cấu hình Firebase.
Nếu bạn tự lưu trữ mã đăng nhập, hãy sao chép khoá API mới và thêm khoá đó vào tệp
__/firebase/init.json
, sau đó triển khai lại ứng dụng.
Xác thực Firebase: Làm cách nào để tạo ứng dụng web OAuth theo cách thủ công?
Mở trang Thông tin xác thực của bảng điều khiển Google Cloud.
Ở đầu trang, hãy chọn Tạo thông tin xác thực > Mã ứng dụng khách OAuth.
Nếu bạn được nhắc định cấu hình màn hình xin phép, hãy làm theo hướng dẫn trên màn hình, sau đó tiếp tục thực hiện các bước sau trong phần Câu hỏi thường gặp này.
Tạo ứng dụng web OAuth:
Đối với Application Type (Loại ứng dụng), hãy chọn Web application (Ứng dụng web).
Đối với Nguồn gốc JavaScript được cho phép, hãy thêm đoạn mã 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 uỷ quyền, hãy thêm những thông tin sau:
https://PROJECT_ID.firebaseapp.com/__/auth/handler
https://PROJECT_ID.web.app/__/auth/handler
Lưu ứng dụng OAuth.
Sao chép mã ứng dụng khách OAuth mới và mật khẩu ứng dụng khách vào bảng nhớ tạm.
Trong bảng điều khiển của Firebase, hãy mở phần Xác thực.
Trong thẻ Phương thức đăng nhập, hãy mở nhà cung cấp dịch vụ Đăng nhập bằng Google, sau đó dán mã ứng dụng khách và khoá bí mật của máy chủ web mà bạn vừa tạo và sao chép từ bảng điều khiển Google Cloud. Nhấp vào Save (Lưu).
Xác thực Firebase: Cách %APP_NAME%
xác định cho mẫu email dành cho email xác nhận có thể gửi tới 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 sẵn tên thương hiệu OAuth. Tên thương hiệu này được tự động cấp phép bất cứ khi nào một ứng dụng Android được đăng ký trong dự án Firebase. Hiện tại, vì thương hiệu OAuth chỉ được cấp phép khi tính năng đăng nhập bằng Google đang bật, nên nội dung sau đây mô tả cách xác định %APP_NAME%
:
Nếu có tên thương hiệu OAuth, thì
%APP_NAME%
trong mẫu email sẽ là tên thương hiệu OAuth (tương tự như hành vi trước tháng 12 năm 2022).Nếu tên thương hiệu OAuth không có sẵn, dưới đây là cách xác định
%APP_NAME%
trong mẫu email:Đối với ứ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à mã dự án Firebase).Đối với ứng dụng di động:
Nếu tên gói Android hoặc mã nhận dạng gói iOS có trong yêu cầu, thì
%APP_NAME%
sẽ là tên ứng dụng được dùng trong Cửa hàng Play hoặc App Store (tương ứng).Nếu không,
%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à mã dự án Firebase).
Xin lưu ý rằng nếu không tra cứu được tên trang web Lưu trữ Firebase mặc định, thì cách dự phòng cuối cùng là sử dụng mã dự án Firebase làm
%APP_NAME%
.
Cloud Functions
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?
- Đảm bảo bạn đang sử dụng gói giá linh hoạt.
- Đảm bảo bạn đang sử dụng phiên bản mới nhất của Firebase CLI.
- Cập nhật trường
engines
trongpackage.json
của hàm. - Nếu muốn, hãy kiểm thử các thay đổi của bạn bằng Bộ công cụ mô phỏng cục bộ Firebase.
- Triển khai lại tất cả hàm.
Làm cách nào để đảm bảo tôi đã triển khai các chức năng của mình cho một thời gian chạy Node.js cụ thể?
Trong bảng điều khiển của Firebase, hãy chuyển đến trang tổng quan về hàm, chọn một hàm rồi kiểm tra ngôn ngữ của hàm trong phần Thông tin chi tiết bổ sung.
Tôi sử dụng Tiện ích Firebase. Các bản cập nhật thời gian chạy Cloud Functions có ảnh hưởng đến tôi không?
Có. Vì các tiện ích sử dụng Chức năng đám mây, nên thời gian chạy của tiện ích cần được cập nhật theo cùng tiến trình với Các chức năng đám mây.
Bạn nên cập nhật định kỳ lên phiên bản mới nhất của mỗi tiện ích đã cài đặt trong dự án. Bạn có thể nâng cấp phần mở rộng của dự án thông qua bảng điều khiển của Firebase hoặc CLI của Firebase.
Gửi thông báo qua đám mây
Gửi thông báo qua đám mây: Sự khác biệt giữa trình soạn Thông báo và Gửi thông báo qua đám mây là gì?
Giải pháp gửi thông báo qua đám mây của Firebase cung cấp một bộ chức năng nhắn tin hoàn chỉnh thông qua SDK ứng dụng cũng như giao thức máy chủ HTTP và RCS. Đối với các hoạt động triển khai có các yêu cầu nhắn tin phức tạp hơn, FCM là lựa chọn phù hợp.
Trình soạn Thông báo là một giải pháp nhắn tin nhẹ, không máy chủ, được xây dựng dựa trên Giải pháp gửi thông báo qua đám mây của Firebase. Với bảng điều khiển đồ hoạ thân thiện với người dùng và giảm yêu cầu lập trình, Trình soạn thông báo cho phép người dùng dễ dàng gửi thông báo để thu hút lại và giữ chân người dùng, thúc đẩy ứng dụng phát triển và hỗ trợ các chiến dịch tiếp thị.
Tính năng | Trình soạn thông báo | Gửi thông báo qua đám mây | |
---|---|---|---|
Mục tiêu | Một thiết bị | ||
Khách hàng đã đăng ký theo dõi các chủ đề (ví dụ: thời tiết) | |||
Ứng dụng trong phân khúc người dùng xác định trước (ứng dụng, phiên bản, ngôn ngữ) | |||
Khách hàng trong đối tượng Analytics được chỉ định | |||
Ứng dụng trong nhóm thiết bị | |||
Luồng dữ liệu từ máy khách đến máy chủ | |||
Loại thông báo | Thông báo tối đa 2kb | ||
Thông báo dữ liệu tối đa 4 kb | |||
Giao hàng | Tức thì | ||
Giờ địa phương trên thiết bị của khách hàng trong tương lai | |||
Số liệu phân tích | Tích hợp sẵn tính năng thu thập số liệu phân tích về Thông báo và số liệu phân tích phễu |
Giải pháp gửi thông báo qua đám mây: Apple thông báo rằng họ sẽ ngừng sử dụng giao thức nhị phân cũ cho các APN. Tôi có cần phải làm gì không?
Không. Giải pháp gửi thông báo qua đám mây của Firebase đã chuyển sang giao thức APN dựa trên HTTP/2 vào năm 2017. Nếu đang sử dụng FCM để gửi thông báo tới thiết bị iOS thì bạn không cần làm gì cả.
Gửi thông báo qua đám mây: Tôi có cần phải sử dụng các dịch vụ Firebase khác để sử dụng FCM không?
Bạn có thể sử dụng Giải pháp gửi thông báo qua đám mây của Firebase như một thành phần độc lập, theo cách tương tự như cách bạn đã làm với GCM mà không cần sử dụng các dịch vụ Firebase khác.
Gửi thông báo qua đám mây: Tôi hiện là nhà phát triển Gửi thông báo qua đám mây của Google (GCM). Tôi có nên chuyển sang Giải pháp gửi thông báo qua đám mây của Firebase không?
FCM là phiên bản GCM mới của thương hiệu Firebase. Ứng dụng này kế thừa cơ sở hạ tầng cốt lõi của GCM, với các SDK mới để giúp việc phát triển Giải pháp gửi thông báo qua đám mây trở nên dễ dàng hơn.
Sau đây là những lợi ích khi nâng cấp lên SDK FCM:
- Phát triển khách hàng đơn giản hơn. Bạn không còn phải tự viết logic đăng ký hoặc thử lại gói thuê bao nữa.
- Một giải pháp thông báo có sẵn. Bạn có thể sử dụng Trình soạn thông báo, một giải pháp thông báo không máy chủ với bảng điều khiển web cho phép mọi người gửi thông báo để nhắm mục tiêu đến đối tượng cụ thể dựa trên thông tin chi tiết từ Google Analytics.
Để nâng cấp từ GCM SDK lên FCM SDK, hãy xem hướng dẫn di chuyển ứng dụng Android và iOS.
Gửi thông báo qua đám mây: Tại sao có vẻ như các thiết bị mục tiêu của tôi không nhận được tin nhắn?
Khi có vẻ như thiết bị không nhận được tin nhắn, trước tiên, hãy kiểm tra hai nguyên nhân tiềm ẩn sau:
Xử lý thông báo trên nền trước cho nội dung thông báo. Ứng dụng khách cần thêm logic xử lý thông báo để xử lý nội dung thông báo khi ứng dụng đó chạy ở nền trước trên thiết bị. Hãy xem thông tin chi tiết dành cho iOS và Android.
Hạn chế với tường lửa củ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 tường lửa đó để cho phép kết nối với FCM để các ứng dụng Nhắn tin qua đám mây Firebase nhận được thông báo. Các cổng có thể mở là:
- 5228
- 5229
- 5230
FCM thường sử dụng 5228, nhưng đôi khi sử dụng 5229 và 5230. FCM không cung cấp IP cụ thể, vì vậy, bạn nên cho phép tường lửa chấp nhận kết nối đi tới tất cả các địa chỉ IP có trong các khối IP được liệt kê trong ASN 15169 của Google.
Gửi thông báo qua đám mây: Tôi đã triển khai onMessageReceived
trong ứng dụng Android của mình nhưng tính năng này chưa được gọi.
Khi ứng dụng của bạn chạy trong nền,
tin nhắn thông báo sẽ hiển thị trong khay hệ thống và onMessageReceived
sẽ không được gọi. Đối với các tin nhắn thông báo có tải trọng dữ liệu, nội dung thông báo sẽ hiển thị trong khay hệ thống, và dữ liệu đi kèm với nội dung thông báo có thể được truy xuất từ ý định được chạy khi người dùng nhấn vào thông báo.
Để biết thêm thông tin, hãy xem phần Nhận và xử lý thông báo.
Trình soạn thông báo: Sự khác biệt giữa trình soạn Thông báo và Gửi thông báo qua đám mây là gì?
Trình soạn Thông báo là một giải pháp nhắn tin nhẹ, không máy chủ, được xây dựng dựa trên Giải pháp gửi thông báo qua đám mây của Firebase. Với bảng điều khiển đồ hoạ thân thiện với người dùng và giảm yêu cầu lập trình, Trình soạn thông báo cho phép người dùng dễ dàng gửi thông báo để thu hút lại và giữ chân người dùng, thúc đẩy ứng dụng phát triển và hỗ trợ các chiến dịch tiếp thị.
Giải pháp gửi thông báo qua đám mây của Firebase cung cấp một bộ chức năng nhắn tin hoàn chỉnh thông qua SDK ứng dụng cũng như giao thức máy chủ HTTP và RCS. Đối với các hoạt động triển khai có các yêu cầu nhắn tin phức tạp hơn, FCM là lựa chọn phù hợp.
Dưới đây là phần so sánh các chức năng nhắn tin do Giải pháp gửi thông báo qua đám mây của Firebase và trình soạn Thông báo cung cấp:
Tính năng | Trình soạn thông báo | Gửi thông báo qua đám mây | |
---|---|---|---|
Mục tiêu | Một thiết bị | ||
Khách hàng đã đăng ký theo dõi các chủ đề (ví dụ: thời tiết) | |||
Ứng dụng trong phân khúc người dùng xác định trước (ứng dụng, phiên bản, ngôn ngữ) | |||
Khách hàng trong đối tượng Analytics được chỉ định | |||
Ứng dụng trong nhóm thiết bị | |||
Luồng dữ liệu từ máy khách đến máy chủ | |||
Loại thông báo | Thông báo tối đa 2kb | ||
Thông báo dữ liệu tối đa 4 kb | |||
Giao hàng | Tức thì | ||
Giờ địa phương trên thiết bị của khách hàng trong tương lai | |||
Số liệu phân tích | Tích hợp sẵn tính năng thu thập số liệu phân tích về Thông báo và số liệu phân tích phễu |
Trình soạn thông báo: Tôi hiện là nhà phát triển Giải pháp gửi thông báo qua đám mây của Google (GCM) và tôi muốn sử dụng trình soạn Thông báo. Tôi nên làm gì?
Trình soạn thông báo là một giải pháp có sẵn cho phép mọi người gửi thông báo để nhắm mục tiêu đến đối tượng cụ thể dựa trên thông tin chi tiết từ Google Analytics. Ngoài ra, trình soạn Thông báo còn cung cấp dữ liệu phân tích phễu cho mọi thông báo, giúp dễ dàng đánh giá hiệu quả của thông báo.
Nếu bạn hiện đang là nhà phát triển GCM, thì để sử dụng trình soạn Thông báo, bạn phải nâng cấp từ SDK GCM lên SDK FCM. Xem hướng dẫn để di chuyển ứng dụng Android và iOS.
Các tính năng của FCM sẽ ngừng hoạt động từ tháng 6 năm 2023
Những API FCM nào không được dùng nữa kể từ ngày 20 tháng 6 năm 2023 và tôi nên làm gì nếu đang sử dụng các API đó?
Các API/SDK sau đây sẽ bị ảnh hưởng khi ngừng sử dụng:
API máy chủ
Tên API | Điểm cuối API | Tác động đến người dùng | Việc cần làm |
---|---|---|---|
Giao thức HTTP cũ | https://fcm.googleapis.com/fcm/send | Các yêu cầu gửi đến điểm cuối sẽ bắt đầu không thành công sau ngày 21/6/2024. | Chuyển sang API HTTP phiên bản 1. |
Giao thức RTMP cũ | fcm-xmpp.googleapis.com:5235 | Các yêu cầu gửi đến điểm cuối sẽ bắt đầu không thành công sau ngày 21/6/2024. | Chuyển sang API HTTP phiên bản 1. |
API máy chủ mã nhận dạng phiên bản | https://iid.googleapis.com/v1/web/iid | Các yêu cầu gửi đến điểm cuối sẽ bắt đầu không thành công sau ngày 21/6/2024. | Sử dụng SDK Web JS để tạo lượt đăng ký web FCM. |
https://iid.googleapis.com/iid/* | Các điểm cuối sẽ tiếp tục hoạt động nhưng sẽ không hỗ trợ việc xác thực bằng khoá máy chủ tĩnh sau ngày 21/6/2024. | Sử dụng mã truy cập OAuth 2.0 bắt nguồn từ tài khoản dịch vụ. | |
API quản lý nhóm thiết bị | https://fcm.googleapis.com/fcm/notification | Điểm cuối này sẽ tiếp tục hoạt động nhưng sẽ không hỗ trợ việc xác thực bằng khoá máy chủ tĩnh sau ngày 21/6/2024. | Sử dụng mã truy cập OAuth 2.0 bắt nguồn từ tài khoản dịch vụ. |
Nhắn tin ngược dòng qua UPI | fcm-xmpp.googleapis.com:5235 | Các lệnh gọi API đến FirebaseMessaging.send trong ứng dụng sẽ không kích hoạt thông báo ngược dòng tới máy chủ ứng dụng sau ngày 21/6/2024. | Triển khai chức năng này trong logic máy chủ của bạn. Ví dụ: một số nhà phát triển triển khai điểm cuối HTTP/gRPC của riêng họ và gọi trực tiếp điểm cuối đó để gửi thông báo từ máy khách đến máy chủ ứng dụng. Hãy xem bài viết Hướng dẫn nhanh về gRPC để tham khảo ví dụ về cách triển khai thông báo ngược dòng bằng gRPC. |
API gửi hàng loạt | https://fcm.googleapis.com/batch | Các yêu cầu gửi đến điểm cuối sẽ bắt đầu không thành công sau ngày 21/6/2024. | Chuyển sang phương thức gửi API HTTP v1 tiêu chuẩn, có hỗ trợ HTTP/2 để ghép kênh. |
API SDK dành cho quản trị viên của Firebase
Tên API | Ngôn ngữ API | Tác động đến người dùng | Việc cần làm |
---|---|---|---|
sendToDevice()
|
Node.js | API này sẽ ngừng hoạt động sau ngày 21/6/2024 vì API này gọi API gửi HTTP cũ. | Sử dụng phương thức send() .
|
sendToDeviceGroup()
|
Node.js | API này sẽ ngừng hoạt động sau ngày 21/6/2024 vì API này gọi API gửi HTTP cũ. | Sử dụng phương thức send() .
|
sendAll()/sendAllAsync()/send_all()/sendMulticast()/SendMulticastAsync()/send_multicast()
|
Node.js, Java, Python, Go, C# | Các API này sẽ ngừng hoạt động sau ngày 21/6/2024 vì chúng gọi API gửi theo lô . | Nâng cấp lên SDK quản trị của Firebase mới nhất và sử dụng các API mới: sendEach()/
sendEachAsync()/send_each()/sendEachForMulticast()/sendEachForMulticastAsync()/
send_each_for_multicast() .
Xin lưu ý rằng các API mới không còn gọi API gửi hàng loạt không dùng nữa. Do đó, các API này có thể tạo ra nhiều kết nối HTTP đồng thời hơn so với các API cũ. |
SDK ứng dụng
Phiên bản SDK | Tác động đến người dùng | Việc cần làm |
---|---|---|
GCM SDK (không dùng nữa vào năm 2018) | Các ứng dụng dùng GCM SDK sẽ không thể đăng ký mã thông báo cũng như không nhận được tin nhắn từ FCM sau ngày 21/6/2024. | Nâng cấp SDK Android của bạn lên SDK Firebase mới nhất nếu bạn chưa nâng cấp. |
JS SDK phiên bản <7.0.0 (thay đổi có thể gây lỗi tại phiên bản 7.0.0 năm 2019) | Các ứng dụng web sử dụng SDK JS cũ sẽ không thể đăng ký mã thông báo sau ngày 21/6/2024. | Nâng cấp SDK web Firebase lên phiên bản mới nhất. |
Tôi có thấy dịch vụ bị hạ cấp trước tháng 6 năm 2024 không?
Không. Bạn có 12 tháng (20/6/2023 – 21/6/2024) để di chuyển từ các API cũ sang API mới mà không hạ cấp dịch vụ. Bạn nên lên kế hoạch di chuyển càng sớm càng tốt để không bị ảnh hưởng do việc ngừng cung cấp các API vào tháng 6 năm 2024.
Sau tháng 6 năm 2024, có thể bạn sẽ thấy số lỗi tăng hoặc thiếu chức năng khi sử dụng các API/SDK nêu trên.
Sự khác biệt giữa mã thông báo OAuth 2.0 và khoá máy chủ là gì?
Mã thông báo OAuth 2.0 là mã thông báo ngắn hạn bắt nguồn từ tài khoản dịch vụ. Đây là mô hình xác thực tiêu chuẩn của Google và an toàn hơn so với khoá máy chủ tĩnh.
Xem bài viết Sử dụng thông tin xác thực để tạo mã truy cập để biết hướng dẫn về cách sử dụng Thư viện xác thực của Google để lấy mã thông báo.
Xin lưu ý rằng tiêu đề của yêu cầu sẽ khác nhau khi bạn sử dụng mã thông báo OAuth 2.0 cho các yêu cầu đến nhiều điểm cuối.
- API HTTP phiên bản 1:
Authorization: Bearer $oauth_token
- API máy chủ mã nhận dạng phiên bản và API Quản lý nhóm thiết bị:
Authorization: Bearer $oauth_token
access_token_auth: true
Tôi có thể di chuyển tất cả các yêu cầu của mình sang API mới cùng một lúc không?
Bạn nên tăng dần lưu lượng truy cập của mình sang API mới. Nếu bạn muốn thường xuyên gửi hơn 600.000 thông báo/phút, hãy liên hệ với bộ phận hỗ trợ của Firebase để biết hướng dẫn về cách tăng hạn mức hoặc nhận các đề xuất về cách phân bổ lưu lượng truy cập.
Sự khác biệt giữa API HTTP v1 và các API cũ là gì khi tôi gửi thông báo đến các chủ đề/nhóm thiết bị?
Chủ đề: bạn không cần thêm tiền tố "/topics/" vào mục tiêu theo chủ đề khi sử dụng API phiên bản 1.
Nhóm thiết bị: Bạn có thể sử dụng mã thông báo nhóm làm mục tiêu mã thông báo trong API HTTP v1. Tuy nhiên, API HTTP v1 không trả về số lần thành công/không thành công trong phản hồi. Bạn nên sử dụng các chủ đề FCM hoặc tự quản lý các nhóm thiết bị.
API HTTP v1 có hỗ trợ gửi thông báo đến nhiều mã thông báo trong một yêu cầu không?
Không. Tính năng "phát đa hướng" trong các API HTTP cũ không được API HTTP v1 hỗ trợ (được thiết kế tốt hơn cho khả năng có thể mở rộng).
Đối với các trường hợp sử dụng có độ trễ hai đầu rất quan trọng hoặc khi tổng quy mô người hâm mộ nhỏ (ít hơn 1 triệu), bạn nên gửi nhiều yêu cầu riêng biệt bằng API HTTP v1. API HTTP v1 so với HTTP/2 hoạt động tương tự đối với 99,9% yêu cầu phát đa hướng (gửi < 100 mã thông báo). Đối với các trường hợp sử dụng ngoại lệ (gửi 1.000 mã thông báo), giải pháp này đạt được tốc độ thông lượng tối đa bằng 1/3. Vì vậy, cần có thêm mô hình đồng thời để tối ưu hoá cho trường hợp sử dụng không điển hình này. Người dùng có thể sử dụng API HTTP phiên bản 1 để trải nghiệm độ tin cậy và khả năng đáp ứng cao hơn so với sử dụng tính năng phát đa hướng cũ.
Đối với các trường hợp sử dụng có băng thông công suất và đầu ra được ưu tiên hoặc khi tổng quy mô fanout lớn (lớn hơn 1 triệu), bạn nên sử dụng tính năng thông báo theo chủ đề. Mặc dù tính năng nhắn tin theo chủ đề yêu cầu hành động một lần để đăng ký người nhận theo một chủ đề, nhưng tính năng này cung cấp tối đa 10.000 QPS tỷ lệ tóm tắt trên mỗi dự án mà không có giới hạn tối đa về kích thước chủ đề.
Phiên bản SDK quản trị của Firebase nào có API mới?
Nền tảng | Phiên bản SDK quản trị của Firebase |
---|---|
Node.js | >=11.7.0 |
Python | >=6.2.0 |
Java | >=9.2.0 |
Tiến hành | >=4,12,0 |
.NET | >=2,4,0 |
Sự khác biệt giữa API gửi hàng loạt và API HTTP v1 là gì?
API gửi hàng loạt FCM sử dụng cùng một định dạng thông báo và cơ chế xác thực như API HTTP v1. Tuy nhiên, hệ thống này sử dụng một điểm cuối khác. Nếu muốn cải thiện hiệu quả, bạn nên cân nhắc sử dụng HTTP/2 để gửi nhiều yêu cầu qua cùng một kết nối HTTP đến API HTTP v1.
Tôi nên làm gì nếu không thể truy cập vào dự án của mình?
Vui lòng liên hệ với nhóm hỗ trợ Google Cloud để được trợ giúp.
Các dự án mới có thể bật API Gửi thông báo qua đám mây cũ không?
Không. Kể từ ngày 20/5/2024, các dự án mới sẽ không bật API cũ nữa.
Cloud Storage cho Firebase
Cloud Storage cho Firebase: Tại sao tôi không thể sử dụng Cloud Storage cho Firebase?
Cloud Storage cho Firebase sẽ tạo một bộ chứa mặc định trong cấp miễn phí của App Engine. Nhờ đó, bạn có thể nhanh chóng thiết lập và sử dụng Firebase và Cloud Storage cho Firebase mà không cần phải cung cấp thẻ tín dụng hoặc bật tài khoản thanh toán Cloud. Nhờ đó, bạn cũng có thể dễ dàng chia sẻ dữ liệu giữa Firebase và dự án trên Google Cloud.
Tuy nhiên, có 2 trường hợp đã biết mà không thể tạo bộ chứa này và bạn sẽ không thể sử dụng Cloud Storage cho Firebase:
- Một dự án được nhập từ Google Cloud có ứng dụng App Engine Master/Slave Datastore.
-
Một dự án được nhập từ Google Cloud có các dự án có tiền tố miền. Ví dụ:
domain.com:project-1234
.
Hiện chưa có giải pháp nào cho những vấn đề này. Bạn nên tạo một dự án mới trong bảng điều khiển của Firebase rồi bật Cloud Storage cho Firebase trong dự án đó.
Cloud Storage cho Firebase: Tại sao tôi nhận được phản hồi mã lỗi 412 về quyền đối với tài khoản dịch vụ và các thao tác tài khoản dịch vụ không thực hiện được khi sử dụng Cloud Storage for Firebase API?
Có thể bạn nhận được mã lỗi 412 do bạn chưa bật Cloud Storage for Firebase API cho dự án của mình hoặc tài khoản dịch vụ cần thiết thiếu các quyền cần thiết.
Xem phần Câu hỏi thường gặp có liên quan.
Cloud Storage cho Firebase: Trên các dự án của gói Spark, tôi có thể lưu trữ tệp thực thi không?
Đối với các dự án trong gói không tốn phí (Spark), Firebase sẽ chặn hoạt động tải lên và lưu trữ một số loại tệp thực thi nhất định cho Windows, Android và Apple bằng Cloud Storage cho Firebase và tính năng Lưu trữ Firebase. Chính sách này được đặt ra để ngăn chặn hành vi sai trái trên nền tảng của chúng tôi.
Chúng tôi sẽ chặn việc phân phát, lưu trữ và tải tệp lên đối với các tệp không được phép đối với tất cả dự án Spark được tạo vào hoặc sau ngày 28 tháng 9 năm 2023. Đối với các dự án Spark hiện tại có tệp được tải lên trước ngày đó, bạn vẫn có thể tải lên và lưu trữ các tệp như vậy.
Quy định hạn chế này áp dụng cho các dự án của gói Spark. Các dự án trong gói trả tiền theo mức dùng (Blaze) sẽ không bị ảnh hưởng.
Bạn không thể lưu trữ các loại tệp sau trên Lưu trữ Firebase và Cloud Storage cho Firebase:
- Tệp Windows có đuôi
.exe
,.dll
và.bat
- Tệp Android có đuôi
.apk
- Tệp trên nền tảng Apple có đuôi
.ipa
Việc bạn cần làm
Nếu bạn vẫn muốn lưu trữ các loại tệp này sau ngày 28 tháng 9 năm 2023:
- Đối với Lưu trữ: hãy nâng cấp lên gói linh hoạt trước khi bạn có thể triển khai các loại tệp này cho Lưu trữ Firebase thông qua lệnh
firebase deploy
. - Đối với Bộ nhớ: hãy nâng cấp lên gói linh hoạt để tải các loại tệp này lên bộ chứa mà bạn chọn bằng GCS CLI, bảng điều khiển của Firebase hoặc bảng điều khiển Google Cloud.
Sử dụng các công cụ Firebase để quản lý tài nguyên Lưu trữ Firebase và Cloud Storage của bạn.
- Để quản lý tài nguyên trong dịch vụ Lưu trữ Firebase, hãy sử dụng bảng điều khiển của Firebase để xoá các bản phát hành theo hướng dẫn này.
- Để quản lý tài nguyên trong Cloud Storage, hãy chuyển đến trang sản phẩm Bộ nhớ lưu trữ trong dự án của bạn.
- Trên thẻ Files (Tệp), hãy tìm các tệp không được phép cần xoá trong hệ phân cấp của thư mục, sau đó chọn các tệp đó bằng cách sử dụng hộp đánh dấu bên cạnh (các) tên tệp ở bên trái bảng điều khiển.
- Nhấp vào Xoá rồi xác nhận các tệp đã bị xoá.
Vui lòng tham khảo tài liệu của chúng tôi để biết thêm thông tin về cách quản lý Tài nguyên lưu trữ bằng các công cụ Firebase và bộ chứa Cloud Storage cho Firebase bằng thư viện ứng dụng.
Cloud Storage cho Firebase: Tại sao tôi thấy số hoạt động tải lên và tải xuống tăng lên ngoài dự kiến?
Trước đây, các yêu cầu tải xuống và tải lên Cloud Storage API cho Firebase không được tính chính xác. Chúng tôi đã tiến hành các bước để khắc phục vấn đề này, kể từ ngày 15 tháng 9 năm 2023.
Đối với người dùng linh hoạt, các hoạt động tải lên và tải xuống sẽ bắt đầu được tính vào hoá đơn hằng tháng của bạn. Đối với người dùng Pixel, họ sẽ bắt đầu được tính vào hạn mức miễn phí hằng tháng của bạn.
Bạn nên theo dõi Trang sử dụng để xem có mức tăng nào có thể được tính vào hạn mức của bạn hay không.
Cloud Storage cho Firebase: Tại sao tôi thấy mã tài khoản dịch vụ mới được liên kết với những dự án Firebase sử dụng Cloud Storage cho Firebase?
Firebase sử dụng tài khoản dịch vụ để vận hành và quản lý các dịch vụ mà không cần chia sẻ thông tin đăng nhập của người dùng. Khi tạo một dự án Firebase, bạn có thể nhận thấy rằng một số tài khoản dịch vụ đã có sẵn trong dự án của mình.
Tài khoản dịch vụ mà Cloud Storage cho Firebase sử dụng nằm trong phạm vi dự án
của bạn và có tên là service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
Nếu đã sử dụng Cloud Storage cho Firebase trước ngày 19 tháng 9 năm 2022, bạn có thể
thấy một tài khoản dịch vụ khác trên các bộ chứa Cloud Storage
đã liên kết trước đó có tên là firebase-storage@system.gserviceaccount.com
. Kể từ ngày 19 tháng 9 năm 2022, tài khoản dịch vụ này không còn được hỗ trợ nữa.
Bạn có thể xem tất cả tài khoản dịch vụ liên kết với dự án của mình trong bảng điều khiển của Firebase, trên thẻ Tài khoản dịch vụ.
Đang thêm tài khoản dịch vụ mới
Nếu đã xoá tài khoản dịch vụ trước đó hoặc tài khoản dịch vụ không có trong dự án, thì bạn có thể làm theo một trong những cách sau để thêm tài khoản đó.
- (Nên dùng) Tự động: Sử dụng điểm cuối REST AddFirebase để nhập lại bộ chứa của bạn vào Firebase. Bạn chỉ cần gọi điểm cuối này một lần, chứ không phải một lần cho mỗi bộ chứa được liên kết.
-
Thủ công: Làm theo các bước trong bài viết Tạo và quản lý tài khoản dịch vụ.
Làm theo hướng dẫn đó, thêm một tài khoản dịch vụ có vai trò IAM
Cloud Storage for Firebase Service Agent
và tên tài khoản dịch vụservice-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
Xoá tài khoản dịch vụ mới
Bạn tuyệt đối không nên xoá tài khoản dịch vụ vì hành động này có thể chặn các ứng dụng của bạn truy cập vào bộ chứa Cloud Storage. Để xoá tài khoản dịch vụ khỏi dự án của bạn, hãy làm theo hướng dẫn trong bài viết Vô hiệu hoá tài khoản dịch vụ.
Crashlytics
Truy cập trang Câu hỏi thường gặp và cách khắc phục sự cố của Crashlytics để biết các mẹo hữu ích và câu trả lời cho các câu hỏi thường gặp khác.
Đường liên kết động
Đường liên kết động: Firebase có kế hoạch gì trong tương lai cho Đường liên kết động?
Đường liên kết động: Tại sao ứng dụng Android của tôi truy cập vào từng Đường liên kết động hai lần?
API getInvitation
xoá Đường liên kết động đã lưu để ngăn việc truy cập hai lần vào đường liên kết này. Hãy nhớ gọi API này bằng tham số autoLaunchDeepLink
được đặt thành false
trong mỗi hoạt động liên kết sâu để xoá API này trong trường hợp hoạt động được kích hoạt bên ngoài hoạt động chính.
Bộ công cụ mô phỏng trên thiết bị của Firebase
Tại sao nhật ký của Bộ mô phỏng hiển thị lỗi bắt đầu bằng "Không sử dụng được nhiều mã dự án ở chế độ dự án duy nhất"?
Thông báo này có nghĩa là Bộ mô phỏng đã phát hiện thấy bộ công cụ này có thể đang chạy một trình mô phỏng sản phẩm cụ thể bằng nhiều mã dự án. Điều này có thể cho thấy một cấu hình sai và có thể gây ra vấn đề khi các trình mô phỏng tìm cách giao tiếp với nhau và khi bạn cố gắng tương tác với các trình mô phỏng qua mã. Nếu mã dự án không khớp, thì có vẻ như dữ liệu sẽ bị thiếu, vì dữ liệu lưu trữ trong trình mô phỏng được khoá vào projectID và khả năng tương tác sẽ phụ thuộc vào các mã dự án trùng khớp.
Đây là một nguồn gây nhầm lẫn phổ biến cho các nhà phát triển. Vì vậy, theo mặc định, Bộ mô phỏng cục bộ giờ đây sẽ chỉ cho phép chạy với một mã dự án duy nhất, trừ phi bạn có chỉ định khác trong tệp cấu hình firebase.json
. Nếu phát hiện thấy nhiều mã dự án, trình mô phỏng sẽ ghi lại cảnh báo và có thể gửi một lỗi nghiêm trọng.
Kiểm tra(các) bản khai báo mã dự án để tìm những thông tin không khớp trong:
-
Dự án mặc định được đặt ở dòng lệnh. Theo mặc định, mã dự án sẽ được lấy khi khởi động từ dự án đã chọn bằng
firebase init
hoặcfirebase use
. Để xem danh sách dự án (và xem dự án nào được chọn), hãy sử dụngfirebase projects:list
. -
Kiểm thử đơn vị. Mã dự án thường được chỉ định trong các lệnh gọi đến phương thức thư viện Kiểm thử đơn vị quy tắc
initializeTestEnvironment
hoặcinitializeTestApp
. Mã kiểm thử khác có thể khởi chạy bằnginitializeApp(config)
. -
Cờ
--project
của dòng lệnh. Việc chuyển cờ Firebase CLI--project
sẽ ghi đè dự án mặc định. Bạn cần đảm bảo giá trị của cờ khớp với mã dự án trong kiểm thử đơn vị và khởi chạy ứng dụng.
Các địa điểm dành riêng cho nền tảng cần kiểm tra:
Web | Thuộc tính projectId trong đối tượng JavaScript firebaseConfig của bạn, được sử dụng trong initializeApp .
|
Android | Thuộc tính project_id bên trong tệp cấu hình google-services.json .
|
Nền tảng của Apple | Thuộc tính PROJECT_ID trong tệp cấu hình GoogleService-Info.plist .
|
Để tắt chế độ dự án đơn, hãy cập nhật firebase.json
bằng khoá singleProjectMode
:
{ "firestore": { ... }, "functions": { ... }, "hosting": { ... }, "emulators": { "singleProjectMode": false, "auth": { "port": 9099 }, "functions": { "port": 5001 }, ... } }
Lưu trữ
Lưu trữ: Trên các dự án của gói Spark, tôi có thể lưu trữ tệp thực thi không?
Đối với các dự án trong gói không tốn phí (Spark), Firebase sẽ chặn hoạt động tải lên và lưu trữ một số loại tệp thực thi nhất định cho Windows, Android và Apple bằng Cloud Storage cho Firebase và tính năng Lưu trữ Firebase. Chính sách này được đặt ra để ngăn chặn hành vi sai trái trên nền tảng của chúng tôi.
Chúng tôi sẽ chặn việc phân phát, lưu trữ và tải tệp lên đối với các tệp không được phép đối với tất cả dự án Spark được tạo vào hoặc sau ngày 28 tháng 9 năm 2023. Đối với các dự án Spark hiện tại có tệp được tải lên trước ngày đó, bạn vẫn có thể tải lên và lưu trữ các tệp như vậy.
Quy định hạn chế này áp dụng cho các dự án của gói Spark. Các dự án trong gói trả tiền theo mức dùng (Blaze) sẽ không bị ảnh hưởng.
Bạn không thể lưu trữ các loại tệp sau trên Lưu trữ Firebase và Cloud Storage cho Firebase:
- Tệp Windows có đuôi
.exe
,.dll
và.bat
- Tệp Android có đuôi
.apk
- Tệp trên nền tảng Apple có đuôi
.ipa
Việc bạn cần làm
Nếu bạn vẫn muốn lưu trữ các loại tệp này sau ngày 28 tháng 9 năm 2023:
- Đối với Lưu trữ: hãy nâng cấp lên gói linh hoạt trước khi bạn có thể triển khai các loại tệp này cho Lưu trữ Firebase thông qua lệnh
firebase deploy
. - Đối với Bộ nhớ: hãy nâng cấp lên gói linh hoạt để tải các loại tệp này lên bộ chứa mà bạn chọn bằng GCS CLI, bảng điều khiển của Firebase hoặc bảng điều khiển Google Cloud.
Sử dụng các công cụ Firebase để quản lý tài nguyên Lưu trữ Firebase và Cloud Storage của bạn.
- Để quản lý tài nguyên trong dịch vụ Lưu trữ Firebase, hãy sử dụng bảng điều khiển của Firebase để xoá các bản phát hành theo hướng dẫn này.
- Để quản lý tài nguyên trong Cloud Storage, hãy chuyển đến trang sản phẩm Bộ nhớ lưu trữ trong dự án của bạn.
- Trên thẻ Files (Tệp), hãy tìm các tệp không được phép cần xoá trong hệ phân cấp của thư mục, sau đó chọn các tệp đó bằng cách sử dụng hộp đánh dấu bên cạnh (các) tên tệp ở bên trái bảng điều khiển.
- Nhấp vào Xoá rồi xác nhận các tệp đã bị xoá.
Vui lòng tham khảo tài liệu của chúng tôi để biết thêm thông tin về cách quản lý Tài nguyên lưu trữ bằng các công cụ Firebase và bộ chứa Cloud Storage cho Firebase bằng thư viện ứng dụng.
Lưu trữ: Tại sao bảng nhật ký phát hành Lưu trữ trong bảng điều khiển của Firebase hiển thị số lượng tệp nhiều hơn số lượng tệp mà dự án cục bộ của tôi thực sự có?
Firebase tự động thêm các tệp bổ sung chứa siêu dữ liệu về trang web Lưu trữ và những tệp này sẽ được tính vào tổng số tệp của bản phát hành.
Lưu trữ: Kích thước tệp lớn nhất mà tôi có thể triển khai cho tính năng Lưu trữ Firebase là bao nhiêu?
Dịch vụ lưu trữ có giới hạn kích thước tối đa là 2 GB cho các tệp riêng lẻ.
Bạn nên lưu trữ các tệp có kích thước lớn hơn bằng Cloud Storage. Giải pháp này cung cấp giới hạn kích thước tối đa trong phạm vi terabyte cho từng đối tượng.
Lưu trữ: Tôi có thể có bao nhiêu trang web Lưu trữ cho mỗi dự án Firebase?
Tính năng nhiều trang web Lưu trữ Firebase hỗ trợ tối đa 36 trang web cho mỗi dự án.
Giám sát hiệu suất
Truy cập vào trang Câu hỏi thường gặp và cách khắc phục sự cố của tính năng Theo dõi hiệu suất để biết các mẹo hữu ích và câu trả lời cho các câu hỏi khác.
Giám sát hiệu suất: Tôi có thể tạo bao nhiêu mẫu URL tùy chỉnh?
Bạn có thể tạo tổng cộng tối đa 400 mẫu URL tuỳ chỉnh cho mỗi ứng dụng và tối đa 100 mẫu URL tuỳ chỉnh cho mỗi miền cho ứng dụng đó.
Giám sát hiệu suất: Tại sao tôi không thấy hiển thị dữ liệu hiệu suất theo thời gian thực?
Để xem dữ liệu hiệu suất theo thời gian thực, hãy đảm bảo rằng ứng dụng của bạn sử dụng phiên bản SDK giám sát hiệu suất tương thích với quá trình xử lý dữ liệu theo thời gian thực.
- iOS – phiên bản 7.3.0 trở lên
- tvOS – phiên bản 8.9.0 trở lên
- Android – phiên bản 19.0.10 trở lên (hoặc Firebase Android BoM phiên bản 26.1.0 trở lên)
- Web – phiên bản 7.14.0 trở lên
Xin lưu ý rằng bạn nên sử dụng phiên bản SDK mới nhất. Tuy nhiên, mọi phiên bản nêu trên đều sẽ cho phép tính năng Giám sát hiệu suất xử lý dữ liệu của bạn gần như theo thời gian thực.
Cơ sở dữ liệu theo thời gian thực
Cơ sở dữ liệu theo thời gian thực: Tại sao băng thông được báo cáo của Cơ sở dữ liệu theo thời gian thực của tôi thấp hơn mức trung bình trong khoảng thời gian từ tháng 9 năm 2016 đến tháng 3 năm 2017?
Để tính toán băng thông, chúng tôi thường tính cả hao tổn mã hoá SSL (dựa trên lớp 5 của mô hình OSI). Tuy nhiên, vào tháng 9 năm 2016, chúng tôi đã phát hiện một lỗi khiến báo cáo băng thông bỏ qua chi phí mã hoá. Điều này có thể đã dẫn đến băng thông được báo cáo thấp và hoá đơn giả tạo trong tài khoản của bạn trong một vài tháng.
Chúng tôi đã phát hành bản sửa lỗi cho lỗi này vào cuối tháng 3 năm 2017, đưa tính năng báo cáo và thanh toán băng thông trở về mức bình thường.
Cơ sở dữ liệu theo thời gian thực: Giới hạn mở rộng của Cơ sở dữ liệu theo thời gian thực là gì?
Mỗi thực thể Cơ sở dữ liệu theo thời gian thực đều có giới hạn về số thao tác ghi mỗi giây. Đối với các lượt ghi nhỏ, giới hạn này là khoảng 1.000 thao tác ghi mỗi giây. Nếu bạn sắp đạt đến giới hạn này, các thao tác tạo lô bằng cách cập nhật nhiều đường dẫn có thể giúp bạn đạt được công suất cao hơn.
Ngoài ra, mỗi thực thể cơ sở dữ liệu đều có giới hạn về số lượng kết nối cơ sở dữ liệu đồng thời. Các giới hạn mặc định của chúng tôi đủ lớn cho hầu hết các ứng dụng. Nếu đang tạo một ứng dụng cần mở rộng phạm vi, có thể bạn sẽ phải phân đoạn ứng dụng trên nhiều thực thể cơ sở dữ liệu để mở rộng quy mô. Bạn cũng có thể cân nhắc Cloud Firestore làm cơ sở dữ liệu thay thế.
Cơ sở dữ liệu theo thời gian thực: Tôi có thể làm gì nếu vượt quá hạn mức sử dụng Cơ sở dữ liệu theo thời gian thực?
Nếu nhận được cảnh báo qua email trong bảng điều khiển của Firebase cho biết rằng bạn đã vượt quá hạn mức sử dụng Cơ sở dữ liệu theo thời gian thực, thì bạn có thể giải quyết vấn đề đó dựa trên hạn mức sử dụng đã vượt quá. Để xem mức sử dụng Cơ sở dữ liệu theo thời gian thực của bạn, hãy chuyển đến trang tổng quan Mức sử dụng cơ sở dữ liệu theo thời gian thực trong bảng điều khiển của Firebase.
Nếu vượt quá giới hạn tải xuống, bạn có thể nâng cấp gói giá Firebase hoặc chờ cho đến khi giới hạn tải xuống được đặt lại khi bắt đầu chu kỳ thanh toán tiếp theo. Để giảm số lượt tải xuống, hãy thử các bước sau:
- Thêm truy vấn để giới hạn dữ liệu mà các hoạt động nghe của bạn trả về.
- Kiểm tra các cụm từ tìm kiếm chưa được lập chỉ mục.
- Sử dụng các trình nghe chỉ tải các bản cập nhật cho dữ liệu xuống – ví dụ:
on()
thay vìonce()
. - Sử dụng quy tắc bảo mật để chặn hoạt động tải xuống trái phép.
Nếu bạn vượt quá hạn mức bộ nhớ, hãy nâng cấp gói giá để tránh bị gián đoạn dịch vụ. Để giảm lượng dữ liệu trong cơ sở dữ liệu, hãy thử các bước sau:
- Chạy các công việc dọn dẹp định kỳ.
- Giảm mọi dữ liệu trùng lặp trong cơ sở dữ liệu.
Xin lưu ý rằng có thể mất một chút thời gian thì bạn mới thấy mọi hoạt động xoá dữ liệu được phản ánh trong mức phân bổ bộ nhớ của bạn.
Nếu bạn đã vượt quá hạn mức kết nối cơ sở dữ liệu đồng thời, hãy nâng cấp gói của bạn để tránh bị gián đoạn dịch vụ. Để quản lý đồng thời các kết nối đến cơ sở dữ liệu, hãy thử kết nối qua người dùng qua API REST nếu họ không cần kết nối theo thời gian thực.
Cấu hình từ xa
Cấu hình từ xa: Tại sao các giá trị được tìm nạp không thay đổi hành vi và giao diện của ứng dụng?
Trừ phi bạn tìm nạp các giá trị bằng fetchAndActivate()
, các giá trị sẽ được lưu trữ cục bộ nhưng không được kích hoạt. Để kích hoạt các giá trị đã tìm nạp để các giá trị đó có thể có hiệu lực, hãy gọi activate
. Thiết kế này cho phép bạn kiểm soát thời điểm hành vi và giao diện của ứng dụng thay đổi, vì bạn có thể chọn thời điểm gọi activate
. Sau khi bạn gọi activate
, mã nguồn của ứng dụng sẽ xác định thời điểm sử dụng các giá trị thông số đã cập nhật.
Ví dụ: bạn có thể tìm nạp các giá trị rồi kích hoạt các giá trị đó vào lần tiếp theo người dùng khởi động ứng dụng. Điều này giúp bạn không cần trì hoãn quá trình khởi động ứng dụng trong khi ứng dụng đang chờ các giá trị đã tìm nạp từ dịch vụ. Sau đó, các thay đổi đối với hành vi và giao diện của ứng dụng sẽ xảy ra khi ứng dụng của bạn sử dụng các giá trị tham số đã cập nhật.
Để tìm hiểu thêm về API Cấu hình từ xa và mô hình sử dụng, hãy xem phần Tổng quan về API Cấu hình từ xa.
Cấu hình từ xa: Tôi đang thực hiện rất nhiều yêu cầu tìm nạp trong khi phát triển ứng dụng của mình. Tại sao ứng dụng của tôi không phải lúc nào cũng nhận được các giá trị mới nhất từ dịch vụ khi gửi yêu cầu tìm nạp?
Trong quá trình phát triển ứng dụng, bạn nên tìm nạp và kích hoạt các cấu hình thật thường xuyên (nhiều lần mỗi giờ) để có thể nhanh chóng lặp lại khi phát triển và kiểm thử ứng dụng. Để đáp ứng việc lặp lại nhanh trên một dự án có tối đa 10 nhà phát triển, bạn có thể tạm thời đặt đối tượng FirebaseRemoteConfigSettings
có khoảng thời gian tìm nạp tối thiểu thấp (setMinimumFetchIntervalInSeconds
) trong ứng dụng của mình.
Cấu hình từ xa: Dịch vụ Cấu hình từ xa trả về các giá trị được tìm nạp bao lâu sau khi ứng dụng của tôi gửi yêu cầu tìm nạp?
Thiết bị thường nhận được các giá trị đã tìm nạp trong chưa đầy một giây và thường nhận được các giá trị được tìm nạp tính bằng mili giây. Dịch vụ Cấu hình từ xa xử lý các yêu cầu tìm nạp trong vòng mili giây, nhưng thời gian cần thiết để hoàn tất yêu cầu tìm nạp sẽ phụ thuộc vào tốc độ mạng của thiết bị và độ trễ của kết nối mạng mà thiết bị sử dụng.
Nếu mục tiêu của bạn là làm cho các giá trị đã tìm nạp có hiệu lực trong ứng dụng càng sớm càng tốt nhưng không tạo ra trải nghiệm người dùng khó chịu, hãy cân nhắc việc thêm lệnh gọi vào fetchAndActivate
mỗi khi ứng dụng làm mới toàn màn hình.
Phòng thử nghiệm
Truy cập vào trang khắc phục sự cố của Phòng thử nghiệm để biết các mẹo hữu ích và câu trả lời cho các câu hỏi thường gặp.
Bộ nhớ phân đoạn người dùng Firebase
Bộ nhớ phân đoạn người dùng Firebase là gì?
Bộ nhớ phân đoạn người dùng Firebase lưu trữ mã cài đặt Firebase và các thuộc tính và phân đoạn có liên quan cũng như danh sách đối tượng mà bạn đã tạo để cung cấp thông tin nhắm mục tiêu cho các dịch vụ Firebase khác sử dụng những thông tin này, chẳng hạn như Crashlytics, FCM, cá nhân hoá Cấu hình từ xa, v.v.