Oluşturduğunuz Firebase Dynamic Links'i almak için uygulamanıza Dynamic Links SDK'sını dahil etmeniz ve OnDynamicLinkReceived
sanal işlevini uygulayan bir firebase::dynamic_links::Listener
nesnesi oluşturmanız gerekir.
C++ SDK'sı hem Android hem iOS'te çalışır. Her platform için bazı ek kurulum gerekir.
Başlamadan önce
Firebase Dynamic Links'i kullanabilmek için şunları yapmanız gerekir:
C++ projenizi kaydedin ve Firebase'i kullanacak şekilde yapılandırın.
C++ projeniz zaten Firebase'i kullanıyorsa Firebase için kaydedilmiş ve yapılandırılmış demektir.
Firebase C++ SDK'sını C++ projenize ekleyin.
Firebase'i C++ projenize eklemenin hem Firebase konsolundaki hem de açık C++ projenizdeki görevleri gerektirdiğini unutmayın (örneğin, Firebase yapılandırma dosyalarını konsoldan indirip C++ projenize taşırsınız).
Özel URL şemaları ekleme (yalnızca iOS için)
Firebase Dynamic Links C++ istemci kitaplığı, bağlantıları işlemek için iOS'teki özel URL şemalarını kullanır. Dinamik Bağlantıların alınmasını desteklemek için uygulamanıza özel URL şemaları eklemeniz gerekir.
Proje yapılandırmanızı açmak için sol ağaç görünümünde proje adını çift tıklayın.
HEDEFLER bölümünden uygulamanızı seçin, ardından Bilgi sekmesini seçin ve URL Türleri bölümünü genişletin.
+ düğmesini tıklayın, ardından ters çevrilmiş istemci kimliğiniz için bir URL şeması ekleyin. Bu değeri bulmak için:
yapılandırma dosyasını açın veGoogleService-Info.plist REVERSED_CLIENT_ID
anahtarını bulun.Bu anahtarın değerini kopyalayın ve 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 (Kimlik > Paket Tanımlayıcısı) bulabilirsiniz.
Dinamik Bağlantı alma
Uygulamayı oluşturma ve başlatma
Alınan Dinamik Bağlantıları kontrol edebilmeniz için öncelikle bir firebase::App
nesnesi oluşturup başlatmanız gerekir.
firebase::App
için başlık dosyasını dahil edin:
#include "firebase/app.h"
Bir sonraki kısım platformunuza bağlı olarak değişiklik gösterir:
Android
JNI ortamını ve Java Etkinliği için jobject
referansını bağımsız değişken olarak ileterek firebase::App
oluşturun:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
firebase::App
öğesini oluşturun:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Dinamik Bağlantıları kontrol etmek için İşleyici'yi uygulama
Alınan bir Dinamik Bağlantı olup olmadığını kontrol etmek için firebase::dynamic_links::Listener
sınıfını uygulayın ve kullanın.
Dynamic Links almak için başlık dosyasını ekleyin:
#include "firebase/dynamic_links.h"
Dynamic Links 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 ikinci bağımsız değişken olarak Başlata geçirin.
Dynamic Links'i almak için İşleyici sınıfınızın OnDynamicLinkReceived
sanal işlevini uygulaması gerekir. Yöntemi geçersiz kılarak, alınmış bir derin 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()); } };