Untuk menerima Firebase Dynamic Links yang Anda buat, Anda harus menyertakan Dynamic Links SDK di aplikasi dan membuat objek firebase::dynamic_links::Listener
yang mengimplementasikan fungsi virtual OnDynamicLinkReceived
.
C++ SDK dapat digunakan di Android dan iOS, dengan sejumlah penyiapan tambahan di tiap platform.
Sebelum memulai
Sebelum dapat menggunakan Firebase Dynamic Links, Anda perlu:
Mendaftarkan project C++ Anda dan mengonfigurasinya agar menggunakan Firebase.
Jika project C++ Anda telah menggunakan Firebase, berarti project tersebut telah terdaftar dan dikonfigurasi untuk Firebase.
Menambahkan Firebase C++ SDK ke project C++ Anda.
Perlu diperhatikan bahwa penambahan Firebase ke project C++ Anda memerlukan tindakan baik di Firebase console maupun di project C++ yang terbuka (misalnya, Anda mendownload file konfigurasi Firebase dari console, lalu memindahkannya ke project C++).
Menambahkan skema URL kustom (hanya untuk iOS)
Library klien C++ Firebase Dynamic Links menggunakan skema URL kustom di iOS untuk memproses link. Anda harus menambahkan skema URL kustom ke aplikasi Anda untuk mendukung penerimaan Dynamic Links.
Untuk membuka konfigurasi project Anda, klik dua kali nama project dalam tampilan hierarki di sebelah kiri.
Pilih aplikasi dari bagian TARGET, pilih tab Info, lalu perluas bagian Jenis URL.
Klik tombol +, lalu tambahkan skema URL untuk client ID terbalik. Untuk menemukan nilai ini:
Buka file konfigurasi
, lalu cari kunciGoogleService-Info.plist REVERSED_CLIENT_ID
.Salin nilai kunci tersebut, lalu tempelkan ke kotak Skema URL di halaman konfigurasi.
Biarkan kolom lainnya kosong.
Klik tombol +, lalu tambahkan skema URL kedua. Skema ini sama dengan ID paket aplikasi Anda.
Misalnya, jika ID paket Anda adalah
com.example.ios
, ketikkan nilai tersebut ke dalam kotak Skema URL.Anda dapat menemukan ID paket aplikasi dalam tab General di konfigurasi project (Identity > Bundle Identifier).
Menerima Dynamic Link
Membuat dan melakukan inisialisasi Aplikasi
Sebelum dapat memeriksa Dynamic Links yang diterima, Anda harus membuat dan melakukan inisialisasi objek firebase::App
.
Sertakan file header untuk firebase::App
:
#include "firebase/app.h"
Bagian berikutnya bervariasi, bergantung pada platform Anda:
Android
Buat firebase::App
, dengan meneruskan lingkungan JNI dan referensi jobject
ke Aktivitas Java sebagai argumen:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
Buat firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Mengimplementasikan Pemroses untuk memeriksa Dynamic Links
Untuk memeriksa Dynamic Link yang diterima, implementasikan dan gunakan class firebase::dynamic_links::Listener
.
Sertakan file header untuk menerima Dynamic Links:
#include "firebase/dynamic_links.h"
Lakukan inisialisasi library Dynamic Links:
::firebase::dynamic_links::Initialize(app, null);
Buat objek yang menerapkan
firebase::dynamic_links::Listener
,
lalu kirimkan ke library Dynamic Links dengan
SetListener()
,
atau teruskan sebagai argumen kedua untuk
Melakukan inisialisasi.
Untuk menerima Dynamic Links, class Pemroses harus mengimplementasikan fungsi virtual
OnDynamicLinkReceived
. Dengan mengganti metodenya, Anda dapat menerima deep link, jika ada yang diterima.
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()); } };