Bắt đầu sử dụng Cơ sở dữ liệu theo thời gian thực của Firebase cho C++

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ó thể sử dụng khi ứng dụng của bạn không có kết nối mạng.

Trước khi bạn bắt đầu

Trước khi 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ì tức là dự án đó đã được đăng ký và định cấu hình cho Firebase.

  • Thêm Firebase C++ SDK vào dự án C++.

Xin lưu ý rằng việc thêm Firebase vào dự án C++ bao gồm các nhiệm 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

  1. Trong bảng điều khiển Firebase, hãy chuyển đến phần Cơ sở dữ liệu và bộ nhớ > Cơ sở dữ liệu theo thời gian thực.

  2. Nhấp vào Tạo cơ sở dữ liệu.

  3. Chọn chế độ khởi động cho Firebase Security Rules:

    Chế độ thử nghiệm

    Phù hợp để bắt đầu với thư viện ứng dụng web và thiết bị di động, nhưng cho phép bất kỳ ai đọc và ghi đè dữ liệu của bạn. Sau khi thử nghiệm, hãy nhớ xem lại phần Tìm hiểu về các quy tắc của Cơ sở dữ liệu theo thời gian thực của Firebase.

    Để bắt đầu sử dụng SDK web, SDK Apple hoặc SDK Android, hãy chọn testmode.

    Chế độ khoá

    Từ chối tất cả các yêu cầu đọc và ghi từ ứng dụng di động và ứng dụng web. Các 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.

  4. 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 của cơ sở dữ liệu mới sẽ có một trong các dạng sau:

    • DATABASE_NAME.firebaseio.com (cho cơ sở dữ liệu trong us-central1)

    • DATABASE_NAME.REGION.firebasedatabase.app (đối với cơ sở dữ liệu ở tất cả các vị trí khác)

  5. Nhấp vào Xong.

Khi bạn bật Realtime Database, API này cũng sẽ được bật trong Trình quản lý API của Cloud.

Tạo và khởi động 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à tệp tham chiếu jobject đến Hoạt động Java dưới dạng đối số:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);

iOS+

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 của mình, bạn có thể chuyển sang các phần về lưu và truy xuất dữ liệu.

Đang thiết lập quyền truy cập bị hạn chế

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

Vấn đề đã biết

  • Trên các nền tảng dành cho 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, nếu không thì 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 tính bền vững.