Aby odebrać Firebase Dynamic Links, utworzone przez siebie,
musisz dodać do aplikacji pakiet SDK Dynamic Links i utworzyć
firebase::dynamic_links::Listener
, który implementuje funkcję
OnDynamicLinkReceived
funkcji wirtualnej.
Pakiet SDK C++ działa zarówno na Androidzie, jak i na iOS, ale na każdej z tych platform wymaga dodatkowej konfiguracji.
Zanim zaczniesz
Zanim zaczniesz korzystać z Firebase Dynamic Links, musisz:
Zarejestruj projekt C++ i skonfiguruj go pod kątem używania Firebase.
Jeśli Twój projekt w C++ korzysta już z Firebase, to jest już zarejestrowany skonfigurowane na potrzeby Firebase.
Dodaj pakiet SDK Firebase C++ do projektu C++.
Dodawanie Firebase do projektu C++ wymaga wykonania zadań zarówno w konsoliFirebase, jak i w otwartym projekcie C++ (np. pobieranie plików konfiguracji Firebase z konsoli i przenoszenie ich do projektu C++).
Dodawanie niestandardowych schematów adresów URL (tylko iOS)
Biblioteka klienta Firebase Dynamic Links w C++ używa niestandardowych schematów adresów URL na iOS do przetwarzania linków. Aby obsługiwać otrzymywanie adresów Dynamic Links, musisz dodać do aplikacji niestandardowe schematy adresów URL.
Aby otworzyć konfigurację projektu, kliknij dwukrotnie jego nazwę w panelu drzewa po lewej stronie.
Wybierz aplikację w sekcji CELE, a następnie kliknij kartę Informacje. rozwiń sekcję Typy adresów URL.
Kliknij przycisk + i dodaj schemat adresu URL dla odwrotnego identyfikatora klienta. Do znajdź tę wartość:
Otwórz plik konfiguracji
i odszukajGoogleService-Info.plist REVERSED_CLIENT_ID
.Skopiuj wartość tego klucza, a potem wklej ją w polu Schematy URL na stronie konfiguracji.
Pozostałe pola pozostaw puste.
Kliknij przycisk +, a potem dodaj drugi schemat adresu URL. Jest on taki sam jak identyfikator pakietu aplikacji.
Jeśli na przykład identyfikator pakietu to
com.example.ios
, wpisz tę wartość w polu Schematy URL.Identyfikator pakietu aplikacji znajdziesz na karcie Ogólne w konfiguracji projektu (Tożsamość > Identyfikator pakietu).
Odbieram: Dynamic Link
Tworzenie i inicjowanie aplikacji
Aby sprawdzić otrzymaną wiadomość Dynamic Links, musisz utworzyć i zainicjować
obiekt firebase::App
.
Dołącz plik nagłówka dla firebase::App
:
#include "firebase/app.h"
Kolejna część zależy od platformy:
Android
Utwórz firebase::App
, przekazując środowisko JNI i jobject
lub odniesienia do aktywności Java jako argumentów:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
Utwórz firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Wdróż detektor, aby sprawdzić Dynamic Links
Aby sprawdzić, czy Dynamic Link została odebrana, zaimplementuj i użyj klasy firebase::dynamic_links::Listener
.
Dołącz plik nagłówka do odbierania Dynamic Links:
#include "firebase/dynamic_links.h"
Inicjalizacja biblioteki Dynamic Links:
::firebase::dynamic_links::Initialize(app, null);
Utwórz obiekt, który implementuje interfejs firebase::dynamic_links::Listener
, i przekaż go do biblioteki Dynamic Links za pomocą funkcji SetListener()
lub przekaż go jako drugi argument funkcji Initialize.
Aby otrzymywać Dynamic Links, klasa Listener musi implementować funkcję wirtualną OnDynamicLinkReceived
. Po zastąpieniu metody możesz otrzymać precyzyjny link, jeśli został on przesłany.
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()); } };