Oluşturduğunuz Firebase Dynamic Links'i almak için Dynamic Links SDK'yı uygulamanıza dahil etmeniz ve OnDynamicLinkReceived
sanal işlevini uygulayan bir firebase::dynamic_links::Listener
nesnesi oluşturmanız gerekir.
C++ SDK, hem Android hem de iOS için çalışır ve her platform için bazı ek kurulumlar gerekir.
Sen başlamadan önce
Firebase Dynamic Links'i kullanmadan önce yapmanız gerekenler:
C++ projenizi kaydedin ve Firebase'i kullanacak şekilde yapılandırın.
C++ projeniz zaten Firebase kullanıyorsa Firebase için zaten kayıtlı ve yapılandırılmış demektir.
Firebase C++ SDK'yı C++ projenize ekleyin.
Firebase'i C++ projenize eklemenin hem Firebase konsolunda hem de açık C++ projenizde görevler içerdiğini unutmayın (örneğin, Firebase yapılandırma dosyalarını konsoldan indirir, ardından bunları C++ projenize taşırsınız).
Özel URL şemaları ekleyin (yalnızca iOS için)
Firebase Dynamic Links C++ istemci kitaplığı, bağlantıları işlemek için iOS'ta özel URL şemaları kullanır. Dinamik Bağlantıların alınmasını desteklemek için uygulamanıza özel URL şemaları eklemelisiniz.
Proje yapılandırmanızı açmak için sol ağaç görünümünde proje adına çift tıklayın.
HEDEFLER bölümünden uygulamanızı seçin, ardından Bilgi sekmesini seçin, ardından URL Türleri bölümünü genişletin.
+ düğmesini tıklayın, ardından tersine çevrilmiş müşteri kimliğiniz için bir URL şeması ekleyin. Bu değeri bulmak için:
yapılandırma dosyasını açın, ardındanGoogleService-Info.plist REVERSED_CLIENT_ID
anahtarını arayın.Bu anahtarın değerini kopyalayın, ardından yapılandırma sayfasındaki URL Şemaları kutusuna yapıştırın.
Diğer alanları boş bırakın.
+ düğmesini tıklayın, ardından ikinci bir URL şeması ekleyin. Bu, uygulamanızın paket kimliğiyle aynıdır.
Örneğin, paket kimliğiniz
com.example.ios
ise, bu değeri URL Şemaları kutusuna yazın.Uygulamanızın paket kimliğini proje yapılandırmasının Genel sekmesinde bulabilirsiniz ( Identity > Bundle Identifier ).
Dinamik Bağlantı Alma
Uygulama oluştur ve başlat
Alınan Dinamik Bağlantıları kontrol etmeden önce, bir firebase::App
nesnesi oluşturmanız ve başlatmanız gerekir.
firebase::App
için başlık dosyasını ekleyin:
#include "firebase/app.h"
Bir sonraki kısım, platformunuza bağlı olarak değişir:
Android
JNI ortamını ve Java Etkinliğine bir jobject
referansını argüman olarak ileterek firebase::App
oluşturun:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
firebase::App
oluşturun:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Dinamik Bağlantıları kontrol etmek için Dinleyiciyi uygulayın
Alınan bir Dinamik Bağlantıyı kontrol etmek için firebase::dynamic_links::Listener
sınıfını uygulayın ve kullanın.
Dinamik Bağlantıları almak için başlık dosyasını ekleyin:
#include "firebase/dynamic_links.h"
Dinamik Bağlantılar kitaplığını başlatın :
::firebase::dynamic_links::Initialize(app, null);
firebase::dynamic_links::Listener
uygulayan bir nesne oluşturun ve bunu SetListener()
ile Dynamic Links kitaplığına sağlayın veya bunu, Initialize öğesine ikinci bağımsız değişken olarak iletin.
Dinamik Bağlantıları almak için Listener sınıfınızın OnDynamicLinkReceived
sanal işlevini uygulaması gerekir. Yöntemi geçersiz kılarak, alınmışsa derin bir bağlantı alabilirsiniz.
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()); } };