Per ricevere il Firebase Dynamic Links che hai creato,
devi includere l'SDK Dynamic Links nella tua app e creare un
oggetto
firebase::dynamic_links::Listener
che implementi la funzione virtuale
OnDynamicLinkReceived
.
L'SDK C++ funziona sia per Android che per iOS, con alcune configurazioni aggiuntive necessarie per ogni piattaforma.
Prima di iniziare
Prima di poter utilizzare Firebase Dynamic Links, devi:
Registra il tuo progetto C++ e configuralo in modo che utilizzi Firebase.
Se il tuo progetto C++ utilizza già Firebase, significa che è già registrato e configurato per Firebase.
Aggiungi l'SDK Firebase C++ al tuo progetto C++.
Tieni presente che l'aggiunta di Firebase al tuo progetto C++ comporta attività sia nel Console Firebase e nel tuo progetto C++ aperto (ad esempio, scarichi di configurazione di Firebase dalla console, quindi spostali nel progetto C++).
Aggiungere schemi URL personalizzati (solo per iOS)
La libreria client C++ di Firebase Dynamic Links utilizza schemi URL personalizzati su iOS per link per i processi. Per supportare la ricezione diDynamic Links, devi aggiungere alla tua app schemi URL personalizzati.
Per aprire la configurazione del progetto, fai doppio clic sul nome del progetto nella vista ad albero a sinistra.
Seleziona la tua app dalla sezione TARGET, quindi seleziona la scheda Informazioni. ed espandi la sezione Tipi di URL.
Fai clic sul pulsante +, quindi aggiungi uno schema URL per l'ID client invertito. Per trovare questo valore:
Apri il file di configurazione
, quindi cerca la chiaveGoogleService-Info.plist REVERSED_CLIENT_ID
.Copia il valore della chiave, quindi incollalo nella casella Schemi URL nella pagina di configurazione.
Lascia vuoti gli altri campi.
Fai clic sul pulsante + e poi aggiungi un secondo schema URL. È uguale a l'ID pacchetto dell'app.
Ad esempio, se il tuo ID pacchetto è
com.example.ios
, digita quel valore nel campo Schemi URL.Puoi trovare l'ID pacchetto della tua app nella scheda Generale della configurazione del progetto (Identità > Identificatore pacchetto).
Ricezione di un Dynamic Link
Crea e inizializza l'app
Prima di poter controllare i Dynamic Links ricevuti, devi creare e inizializzare
è un oggetto firebase::App
.
Includi il file di intestazione per firebase::App
:
#include "firebase/app.h"
La parte successiva varia a seconda della piattaforma:
Android
Crea firebase::App
passando come argomenti l'ambiente JNI e un riferimento jobject
alla Java Activity:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
Crea il firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Implementa Listener per verificare la presenza di Dynamic Links
Per verificare la ricezione di un Dynamic Link, implementa e utilizza lo
firebase::dynamic_links::Listener
.
Includi il file di intestazione per la ricezione di Dynamic Links:
#include "firebase/dynamic_links.h"
Inizializza la libreria Dynamic Links:
::firebase::dynamic_links::Initialize(app, null);
Crea un oggetto che implementa
firebase::dynamic_links::Listener
,
e lo fornisci alla libreria Dynamic Links con
SetListener()
o passarlo come secondo argomento
Inizializza.
Per ricevere Dynamic Links, la classe Listener deve implementare la funzione virtuale
OnDynamicLinkReceived
. Sostituendo il metodo, puoi ricevere un link diretto, se ne è stato ricevuto uno.
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()); } };