لتلقّي Firebase Dynamic Links الذي أنشأته،
عليك تضمين حزمة تطوير البرامج (SDK) Dynamic Links في تطبيقك وإنشاء
عنصر firebase::dynamic_links::Listener
ينفّذ الدالة
الافتراضية OnDynamicLinkReceived.
تعمل حزمة تطوير البرامج (SDK) بلغة C++ مع كلّ من Android وiOS، مع الحاجة إلى إجراء بعض عمليات الإعداد الإضافية لكل نظام أساسي.
قبل البدء
قبل أن تتمكّن من استخدام Firebase Dynamic Links، عليك إجراء ما يلي:
سجِّل مشروع C++ الخاص بك وأعدَّه لاستخدام Firebase.
إذا كان مشروع C++ يستخدم Firebase من قبل، يكون قد تم تسجيله وإعداده لاستخدام Firebase.
أضِف حزمة تطوير البرامج (SDK) الخاصة بـ Firebase C++ إلى مشروع C++.
يُرجى العِلم أنّ إضافة Firebase إلى مشروع C++ يتضمّن مهامًا في كل من Firebase وحدة التحكّم ومشروع C++ المفتوح (على سبيل المثال، يمكنك تنزيل ملفات إعداد Firebase من وحدة التحكّم، ثم نقلها إلى مشروع C++).
إضافة مخططات عناوين URL مخصّصة (لنظام التشغيل iOS فقط)
تستخدم مكتبة عميل Firebase Dynamic Links C++ مخطّطات عناوين URL مخصّصة على أجهزة iOS لمعالجة الروابط. يجب إضافة مخطّطات عناوين URL مخصّصة إلى تطبيقك لتتمكّن من تلقّي Dynamic Links.
لفتح إعدادات مشروعك، انقر مرّتين على اسم المشروع في العرض الشجري الأيمن.
اختَر تطبيقك من قسم الاستهدافات، ثم انقر على علامة التبويب المعلومات، ثم وسِّع قسم أنواع عناوين URL.
انقر على الزر +، ثم أضِف مخطط URL لمعرّف العميل المعكوس. للعثور على هذه القيمة، اتّبِع الخطوات التالية:
افتح ملف الإعداد
، ثم ابحث عن المفتاحGoogleService-Info.plist REVERSED_CLIENT_ID.انسخ قيمة هذا المفتاح، ثم الصِقها في مربّع مخططات عناوين URL في صفحة الإعدادات.
اترك الحقول الأخرى فارغة.
انقر على الزر +، ثم أضِف مخطط URL ثانيًا. هذا المعرّف هو نفسه معرّف حزمة تطبيقك.
على سبيل المثال، إذا كان معرّف الحزمة هو
com.example.ios، أدخِل هذه القيمة في مربّع مخططات عناوين URL.يمكنك العثور على رقم تعريف حزمة تطبيقك في علامة التبويب عام ضمن إعدادات المشروع (الهوية > معرّف الحزمة).
تلقّي Dynamic Link
إنشاء التطبيق وبدء إعداده
قبل أن تتمكّن من التحقّق من Dynamic Links التي تم تلقّيها، عليك إنشاء عنصر firebase::App وتهيئته.
أدرِج ملف العنوان الخاص بـ firebase::App:
#include "firebase/app.h"
يختلف الجزء التالي حسب المنصة التي تستخدمها:
Android
أنشئ firebase::App، مع تمرير بيئة JNI ومرجع jobject إلى نشاط Java كمعلَمات:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
إنشاء firebase::App:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
تنفيذ Listener للتحقّق من Dynamic Links
للبحث عن Dynamic Link تم استلامه، نفِّذ واستخدِم الفئة
firebase::dynamic_links::Listener.
تضمين ملف العنوان الخاص بتلقّي Dynamic Links:
#include "firebase/dynamic_links.h"
ابدأ مكتبة Dynamic Links:
::firebase::dynamic_links::Initialize(app, null);
أنشئ عنصرًا ينفّذ
firebase::dynamic_links::Listener،
وقدّمه إلى مكتبة Dynamic Links باستخدام
SetListener()،
أو مرِّره كمعلَمة ثانية إلى
Initialize.
لتلقّي Dynamic Links، يجب أن تنفّذ فئة المستمع الدالة الظاهرية
OnDynamicLinkReceived. من خلال إلغاء الطريقة، يمكنك تلقّي رابط لصفحة معيّنة في التطبيق، إذا تم تلقّيه.
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()); } };