Buka konsol

Menerima Dynamic Links dengan C++

Untuk menerima Firebase Dynamic Links yang Anda buat, Anda harus menyertakan Dynamic Links SDK di aplikasi dan membuat objek firebase::invites::Listener yang menerapkan fungsi virtual OnInviteReceived.

C++ SDK dapat digunakan di Android dan iOS dengan beberapa penyiapan tambahan di masing-masing platform.

Sebelum memulai

Android

  1. Jika Anda belum menghubungkan aplikasi ke project Firebase, lakukanlah dari Firebase console.
  2. Tambahkan Firebase ke project Android Anda.
  3. Tambahkan dependensi untuk Firebase Invites ke file build.gradle tingkat aplikasi:
    dependencies {
         compile 'com.google.firebase:firebase-invites:10.0.1'
    }
  4. Tautkan pustaka statis libapp.a dan libinvites.a, dari C++ SDK.

iOS

  1. Jika Anda belum menghubungkan aplikasi ke project Firebase, lakukanlah dari Firebase console.
  2. Tambahkan Firebase ke project iOS Anda.
  3. Pustaka klien Firebase Invites C++ menggunakan skema URL khusus pada iOS untuk memproses link. Anda harus menambahkan skema URL khusus ke aplikasi Anda untuk mendukung penerimaan Dynamic Links:
    1. Untuk membuka konfigurasi project Anda, klik dua kali nama project dalam tampilan hierarki di sebelah kiri. Pilih aplikasi dari bagian TARGET, kemudian pilih tab Info, dan perluas bagian Jenis URL.
    2. Klik tombol +, dan tambahkan skema URL untuk ID klien terbalik Anda. Untuk menemukan nilai ini, buka file konfigurasi GoogleService-Info.plist, dan cari kunci REVERSED_CLIENT_ID. Salin nilai kunci itu, dan tempelkan ke dalam kotak Skema URL pada halaman konfigurasi. Biarkan kolom lainnya kosong.
    3. Klik tombol + dan tambahkan skema URL kedua. Ini sama dengan ID paket aplikasi Anda. Misalnya, jika ID paket Anda adalah com.example.app, ketik nilai tersebut ke dalam kotak Skema URL. Anda dapat menemukan ID paket aplikasi Anda dalam tab Umum di konfigurasi project (Identitas > Pengenal Paket).
  4. Sertakan Pod berikut dalam Podfile:
    pod 'Firebase/Invites'
  5. Jalankan pod install
  6. Tambahkan firebase.framework dan firebase_invites.framework, dari C++ SDK, ke project Xcode Anda.

Menerima Dynamic Link

Membuat dan menginisialisasi Aplikasi

Sebelum Anda dapat memeriksa Dynamic Links yang diterima, Anda harus membuat dan menginisialisasi objek firebase::App.

Sertakan file header untuk firebase::App:

#include "firebase/app.h"

Bagian berikutnya bervariasi, bergantung pada platform Anda:

Android

Buat firebase::App, yang meneruskan lingkungan JNI dan referensi jobject ke Java Activity 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"));

Menerapkan Listener untuk memeriksa Dynamic Links

Pustaka Firebase Invites C++ digunakan untuk menerima Dynamic Links. Untuk memeriksa Dynamic Links yang diterima, terapkan dan gunakan kelas firebase::invites::Listener.

Sertakan file header untuk menerima Invites:

#include "firebase/invites.h"

Inisialisasi pustaka Invites:

::firebase::invites::Initialize(app);

Buat objek yang menerapkan firebase::invites::Listener, dan masukkan ke pustaka Invites dengan SetListener().

Untuk menerima undangan, kelas Listener Anda harus menerapkan fungsi virtual OnInviteReceived. Dengan mengganti metode, Anda dapat menerima deep link, jika telah diterima.

void OnInviteReceived(const char* invitation_id, const char* deep_link,
                      bool is_strong_match) override {
  if (deep_link != nullptr) {
    // The app received a Dynamic Link. This may have come from an invitation
    // (if invite.invitation_id is set), or it might have been sent using
    // Firebase Dynamic Links.
    // In any event, the app can now act on this link as you see fit.
  }
  if (invitation_id != nullptr) {
    // We received an invitation ID. See the Firebase Invites documentation
    // for more information.
  }
}