Nhận liên kết động bằng C++

Để nhận được Liên kết động Firebase mà bạn đã tạo , bạn phải bao gồm SDK Liên kết động trong ứng dụng của mình và tạo đối tượng firebase::dynamic_links::Listener triển khai chức năng ảo OnDynamicLinkReceived .

SDK C++ hoạt động cho cả Android và iOS, với một số thiết lập bổ sung cần thiết cho từng nền tảng.

Trước khi bắt đầu

Trước khi có thể sử dụng Liên kết động Firebase , bạn cần:

  • Đăng ký dự án C++ của bạn và định cấu hình 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++ của bạn.

Lưu ý rằng việc thêm Firebase vào dự án C++ của bạn bao gồm các tác vụ cả trong bảng điều khiển Firebase và trong dự án C++ mở của bạn (ví dụ: bạn tải xuống tệp cấu hình Firebase từ bảng điều khiển, sau đó chuyển chúng vào dự án C++ của bạn).

Thêm lược đồ URL tùy chỉnh (chỉ dành cho iOS)

Thư viện máy khách Firebase Dynamic Links C++ sử dụng lược đồ URL tùy chỉnh trên iOS để xử lý liên kết. Bạn phải thêm lược đồ URL tùy chỉnh vào ứng dụng của mình để hỗ trợ nhận Liên kết động.

  1. Để mở cấu hình dự án của bạn, bấm đúp vào tên dự án trong chế độ xem dạng cây bên trái.

  2. Chọn ứng dụng của bạn từ phần MỤC TIÊU , sau đó chọn tab Thông tin , sau đó mở rộng phần Loại URL .

  3. Nhấp vào nút + , sau đó thêm lược đồ URL cho ID khách hàng đã đảo ngược của bạn. Để tìm giá trị này:

    1. Mở tệp cấu hình GoogleService-Info.plist , sau đó tìm khóa REVERSED_CLIENT_ID .

    2. Sao chép giá trị của khóa đó, sau đó dán vào hộp Lược đồ URL trên trang cấu hình.

    3. Để trống các trường khác.

  4. Nhấp vào nút + , sau đó thêm lược đồ URL thứ hai. ID này giống với ID gói ứng dụng của bạn.

    Ví dụ: nếu ID gói của bạn là com.example.ios , hãy nhập giá trị đó vào hộp Lược đồ URL .

    Bạn có thể tìm thấy ID gói ứng dụng của mình trong tab Chung của cấu hình dự án ( Identity > Bundle Identifier ).

Nhận liên kết động

Tạo và khởi tạo ứng dụng

Trước khi có thể kiểm tra các Liên kết động đã nhận, bạn cần tạo và khởi tạo đối tượng firebase::App .

Bao gồm tệp tiêu đề cho firebase::App :

#include "firebase/app.h"

Phần tiếp theo khác nhau tùy thuộc vào nền tảng của bạn:

Android

Tạo firebase::App , chuyển môi trường JNI và tham chiếu dự án jobject việc đến Hoạt động Java làm đố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"));

Triển khai Trình nghe để kiểm tra Liên kết động

Để kiểm tra Liên kết động đã nhận, hãy triển khai và sử dụng lớp firebase::dynamic_links::Listener .

Bao gồm tệp tiêu đề để nhận Liên kết động:

#include "firebase/dynamic_links.h"

Khởi tạo thư viện Dynamic Links:

::firebase::dynamic_links::Initialize(app, null);

Tạo một đối tượng triển khai firebase::dynamic_links::Listener và cung cấp nó cho thư viện Dynamic Links với SetListener() hoặc chuyển nó làm đối số thứ hai cho Khởi tạo .

Để nhận Liên kết động, lớp Listener của bạn phải triển khai chức năng ảo OnDynamicLinkReceived . Bằng cách ghi đè phương thức, bạn có thể nhận được một liên kết sâu, nếu đã nhận được một liên kết sâu.

class Listener : public firebase::dynamic_links::Listener {
 public:
  // Called on the client when a dynamic link arrives.
  void OnDynamicLinkReceived(
      const firebase::dynamic_links::DynamicLink* dynamic_link) override {
    printf("Received link: %s", dynamic_link->url.c_str());
  }
};