Để nhận Firebase Dynamic Links mà bạn đã tạo,
bạn phải đưa SDK Dynamic Links vào ứng dụng và tạo một
firebase::dynamic_links::Listener
đối tượng triển khai
OnDynamicLinkReceived
hàm ảo.
SDK C++ hoạt động cho cả Android và iOS, với một số bước thiết lập bổ sung cho từng nền tảng.
Trước khi bắt đầu
Trước khi bạn có thể sử dụng Firebase Dynamic Links! bạn cần:
Đăng ký dự án C++ của bạn 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, có nghĩa là dự án đó đã được đăng ký và được định cấu hình cho Firebase.
Thêm SDK Firebase C++ vào dự án C++.
Lưu ý rằng việc thêm Firebase vào dự án C++ bao gồm các tác vụ trong cả Bảng điều khiển Firebase và trong dự án C++ đang 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 đó di chuyển các tệp đó vào dự án C++).
Thêm lược đồ URL tuỳ chỉnh (chỉ dành cho iOS)
Thư viện ứng dụng C++ Firebase Dynamic Links sử dụng các giao thức URL tuỳ chỉnh trên iOS để xử lý. Bạn phải thêm giao thức URL tuỳ chỉnh vào ứng dụng để hỗ trợ nhận Dynamic Links.
Để mở cấu hình dự án, hãy nhấp đúp vào tên dự án ở bên trái chế độ xem dạng cây.
Chọn ứng dụng của bạn trong mục TARGETS (MỤC TIÊU), sau đó chọn thẻ Info (Thông tin), rồi mở rộng mục URL Types (Loại URL).
Nhấp vào nút +, sau đó thêm giao thức URL cho mã ứng dụng khách đảo ngược. Cách tìm giá trị này:
Mở tệp cấu hình
, sau đó tìm KhoáGoogleService-Info.plist REVERSED_CLIENT_ID
.Sao chép giá trị của khoá đó, rồi dán vào hộp Lược đồ URL trên trang cấu hình.
Để trống các trường khác.
Nhấp vào nút dấu +, sau đó thêm lược đồ URL thứ hai. Mã này giống với mã nhận dạng gói của ứng dụng.
Ví dụ: nếu mã nhận dạng gói của bạn là
com.example.ios
, hãy nhập giá trị đó vào hộp URL Schemes (Lược đồ URL).Bạn có thể tìm thấy mã nhận dạng gói của ứng dụng trong thẻ General (Chung) của cấu hình dự án (Identity > Bundle Identifier (Giá trị nhận dạng > Mã nhận dạng gói)).
Nhận Dynamic Link
Tạo và khởi chạy ứng dụng
Trước khi có thể kiểm tra Dynamic Links đã nhận được, bạn cần tạo và khởi chạy đối tượng firebase::App
.
Bao gồm tệp tiêu đề cho firebase::App
:
#include "firebase/app.h"
Phần tiếp theo sẽ khác nhau tuỳ thuộc vào nền tảng của bạn:
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
Tạo firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Triển khai Trình nghe để kiểm tra Dynamic Links
Để kiểm tra Dynamic Link đã nhận, hãy triển khai và sử dụng phương thức
firebase::dynamic_links::Listener
.
Bao gồm tệp tiêu đề để nhận Dynamic Links:
#include "firebase/dynamic_links.h"
Khởi chạy thư viện Dynamic Links:
::firebase::dynamic_links::Initialize(app, null);
Tạo một đối tượng giúp triển khai
firebase::dynamic_links::Listener
!
và cung cấp tệp đó cho thư viện Dynamic Links bằng
SetListener()
,
hoặc truyền nó dưới dạng đối số thứ hai cho
Khởi động.
Để nhận Dynamic Links, lớp Trình nghe của bạn phải triển khai
OnDynamicLinkReceived
hàm ảo. Bằng cách ghi đè phương thức này, bạn có thể nhận được một đường liên kết sâu nếu
đã nhận được một mã.
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()); } };