Cơ sở dữ liệu theo thời gian thực của Firebase lưu trữ và đồng bộ hoá dữ liệu bằng cơ sở dữ liệu đám mây NoSQL. Dữ liệu được đồng bộ hoá trên tất cả ứng dụng theo thời gian thực và vẫn có sẵn khi ứng dụng của bạn không có mạng.
Trước khi bạn bắt đầu
Để có thể sử dụng Firebase Realtime Database, bạn cần:
Đăng ký dự án C++ và định cấu hình dự án đó để sử dụng Firebase.
Nếu dự án C++ của bạn đã sử dụng Firebase, thì dự án đó đã được đăng ký và định cấu hình cho Firebase.
Thêm SDK Firebase C++ vào dự án C++.
Xin lưu ý rằng việc thêm Firebase vào dự án C++ liên quan đến các tác vụ trong cả bảng điều khiển Firebase và trong dự án C++ đang mở (ví dụ: bạn tải các tệp cấu hình Firebase xuống từ bảng điều khiển, sau đó di chuyển các tệp đó vào dự án C++).
Tạo cơ sở dữ liệu
Chuyển đến phần Realtime Database của bảng điều khiển Firebase. Bạn sẽ được nhắc chọn một dự án Firebase hiện có. Làm theo quy trình tạo cơ sở dữ liệu.
Chọn chế độ bắt đầu cho Firebase Security Rules:
- Chế độ kiểm thử
Rất phù hợp để bắt đầu sử dụng thư viện ứng dụng di động và web, nhưng cho phép mọi người đọc và ghi đè dữ liệu của bạn. Sau khi kiểm thử, hãy nhớ xem lại phần Tìm hiểu về quy tắc của Cơ sở dữ liệu theo thời gian thực Firebase.
Để bắt đầu với web, Apple hoặc SDK Android, hãy chọn testmode.
- Chế độ khoá
Từ chối tất cả các hoạt động đọc và ghi từ ứng dụng di động và web. Máy chủ ứng dụng đã xác thực của bạn vẫn có thể truy cập vào cơ sở dữ liệu của bạn.
Chọn vị trí cho cơ sở dữ liệu.
Tuỳ thuộc vào vị trí của cơ sở dữ liệu, URL cho cơ sở dữ liệu mới sẽ có một trong các dạng sau:
(dành cho cơ sở dữ liệu trongDATABASE_NAME.firebaseio.com
us-central1
) (đối với cơ sở dữ liệu ở tất cả các vị trí khác)DATABASE_NAME.REGION.firebasedatabase.app
Nhấp vào Xong.
Khi bạn bật Realtime Database, API này cũng sẽ bật API trong Trình quản lý API trên đám mây.
Tạo và khởi chạy firebase::App
Trước khi có thể truy cập vào Realtime Database, bạn cần tạo và khởi chạy firebase::App
.
Thêm tệp tiêu đề cho firebase::App
:
#include "firebase/app.h"
Android
Tạo firebase::App
, truyền môi trường JNI và tham chiếu jobject
đến Hoạt động Java làm đối số:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS trở lên
Tạo firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Truy cập vào lớp firebase::database::Database
firebase::database::Database
là điểm truy cập cho SDK C++ Firebase Realtime Database.
::firebase::database::Database *database = ::firebase::database::Database::GetInstance(app);
Nếu đã chọn sử dụng quyền truy cập công khai cho các quy tắc, bạn có thể chuyển sang các phần về cách lưu và truy xuất dữ liệu.
Thiết lập chế độ Quyền truy cập bị giới hạn
Nếu không muốn sử dụng quyền truy cập công khai, bạn có thể thêm Firebase Authentication vào ứng dụng để kiểm soát quyền truy cập vào cơ sở dữ liệu.
Các bước tiếp theo
Tìm hiểu cách sắp xếp dữ liệu cho Realtime Database.
Chuẩn bị ra mắt ứng dụng:
- Thiết lập cảnh báo về ngân sách cho dự án của bạn trong bảng điều khiển Google Cloud.
- Theo dõi trang tổng quan về Mức sử dụng và thanh toán trong bảng điều khiển Firebase để nắm được thông tin tổng quan về mức sử dụng của dự án trên nhiều dịch vụ Firebase. Bạn cũng có thể truy cập vào trang tổng quan Realtime Database Mức sử dụng để biết thêm thông tin chi tiết về mức sử dụng.
- Xem danh sách kiểm tra khi ra mắt Firebase.
Vấn đề đã biết
- Trên các nền tảng máy tính (Windows, Mac, Linux), SDK Firebase C++ sử dụng REST để truy cập vào cơ sở dữ liệu của bạn. Do đó, bạn phải khai báo các chỉ mục mà bạn sử dụng bằng Query::OrderByChild() trên máy tính để bàn, nếu không trình nghe của bạn sẽ không hoạt động.
- Phiên bản quy trình làm việc trên máy tính của Realtime Database không hỗ trợ chế độ ngoại tuyến hoặc chế độ liên tục.