C++ এর সাথে ডায়নামিক লিঙ্কগুলি পান

আপনার তৈরি করা Firebase ডায়নামিক লিঙ্কগুলি পেতে, আপনাকে অবশ্যই আপনার অ্যাপে ডায়নামিক লিঙ্ক SDK অন্তর্ভুক্ত করতে হবে এবং একটি firebase::dynamic_links::Listener অবজেক্ট তৈরি করতে হবে যা OnDynamicLinkReceived ভার্চুয়াল ফাংশন প্রয়োগ করে।

C++ SDK প্রতিটি প্ল্যাটফর্মের জন্য প্রয়োজনীয় কিছু অতিরিক্ত সেটআপ সহ Android এবং iOS উভয়ের জন্যই কাজ করে।

তুমি শুরু করার আগে

আপনি Firebase ডায়নামিক লিঙ্কগুলি ব্যবহার করার আগে, আপনাকে এটি করতে হবে:

  • আপনার C++ প্রজেক্ট নিবন্ধন করুন এবং Firebase ব্যবহার করতে কনফিগার করুন।

    যদি আপনার C++ প্রোজেক্ট ইতিমধ্যেই Firebase ব্যবহার করে, তাহলে এটি ইতিমধ্যেই Firebase-এর জন্য নিবন্ধিত এবং কনফিগার করা আছে।

  • আপনার C++ প্রকল্পে Firebase C++ SDK যোগ করুন।

মনে রাখবেন যে আপনার C++ প্রজেক্টে Firebase যোগ করার জন্য Firebase কনসোল এবং আপনার খোলা C++ প্রজেক্টের উভয় কাজ জড়িত থাকে (উদাহরণস্বরূপ, আপনি কনসোল থেকে Firebase কনফিগার ফাইলগুলি ডাউনলোড করেন, তারপর সেগুলিকে আপনার C++ প্রকল্পে নিয়ে যান)।

কাস্টম URL স্কিম যোগ করুন (শুধুমাত্র iOS এর জন্য)

Firebase ডায়নামিক লিংক C++ ক্লায়েন্ট লাইব্রেরি iOS-এ কাস্টম ইউআরএল স্কিম ব্যবহার করে লিঙ্কগুলি প্রক্রিয়া করতে। ডায়নামিক লিঙ্ক প্রাপ্তি সমর্থন করার জন্য আপনাকে অবশ্যই আপনার অ্যাপে কাস্টম URL স্কিম যোগ করতে হবে।

  1. আপনার প্রজেক্ট কনফিগারেশন খুলতে, বাম ট্রি ভিউতে প্রজেক্টের নামে ডাবল-ক্লিক করুন।

  2. লক্ষ্য বিভাগ থেকে আপনার অ্যাপটি নির্বাচন করুন, তারপর তথ্য ট্যাবটি নির্বাচন করুন, তারপর URL প্রকার বিভাগটি প্রসারিত করুন৷

  3. + বোতামে ক্লিক করুন, তারপর আপনার বিপরীত ক্লায়েন্ট আইডির জন্য একটি URL স্কিম যোগ করুন। এই মান খুঁজে পেতে:

    1. GoogleService-Info.plist কনফিগারেশন ফাইলটি খুলুন, তারপর REVERSED_CLIENT_ID কীটি দেখুন৷

    2. সেই কীটির মান অনুলিপি করুন, তারপর কনফিগারেশন পৃষ্ঠার URL স্কিম বাক্সে পেস্ট করুন।

    3. অন্যান্য ক্ষেত্রগুলি ফাঁকা রাখুন।

  4. + বোতামে ক্লিক করুন, তারপরে একটি দ্বিতীয় URL স্কিম যোগ করুন। এটি আপনার অ্যাপের বান্ডেল আইডির মতোই।

    উদাহরণস্বরূপ, যদি আপনার বান্ডেল আইডি হয় com.example.ios , তাহলে URL স্কিম বক্সে সেই মানটি টাইপ করুন।

    আপনি প্রজেক্ট কনফিগারেশনের সাধারণ ট্যাবে আপনার অ্যাপের বান্ডিল আইডি খুঁজে পেতে পারেন ( Identity > Bundle Identifier )।

একটি ডায়নামিক লিঙ্ক প্রাপ্তি

অ্যাপ তৈরি করুন এবং শুরু করুন

আপনি প্রাপ্ত ডায়নামিক লিঙ্কগুলি পরীক্ষা করার আগে, আপনাকে একটি firebase::App অবজেক্ট তৈরি এবং শুরু করতে হবে।

firebase::App জন্য হেডার ফাইলটি অন্তর্ভুক্ত করুন:

#include "firebase/app.h"

পরবর্তী অংশ আপনার প্ল্যাটফর্মের উপর নির্ভর করে পরিবর্তিত হয়:

অ্যান্ড্রয়েড

firebase::App তৈরি করুন, JNI এনভায়রনমেন্ট পাস করা এবং আর্গুমেন্ট হিসাবে জাভা অ্যাক্টিভিটির একটি jobject রেফারেন্স:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);

iOS

firebase::App :

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));

ডায়নামিক লিঙ্কগুলি পরীক্ষা করতে শ্রোতাকে প্রয়োগ করুন

একটি প্রাপ্ত ডায়নামিক লিঙ্ক পরীক্ষা করতে, firebase::dynamic_links::Listener ক্লাস বাস্তবায়ন এবং ব্যবহার করুন।

ডায়নামিক লিঙ্কগুলি পাওয়ার জন্য হেডার ফাইলটি অন্তর্ভুক্ত করুন:

#include "firebase/dynamic_links.h"

ডায়নামিক লিঙ্ক লাইব্রেরি শুরু করুন:

::firebase::dynamic_links::Initialize(app, null);

firebase::dynamic_links::Listener প্রয়োগ করে এমন একটি অবজেক্ট তৈরি করুন এবং SetListener() এর সাথে এটি ডায়নামিক লিঙ্ক লাইব্রেরিতে সরবরাহ করুন, অথবা এটিকে Initialize করার জন্য দ্বিতীয় আর্গুমেন্ট হিসেবে পাস করুন।

ডায়নামিক লিঙ্কগুলি পেতে, আপনার শ্রোতা শ্রেণীকে অবশ্যই 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());
  }
};
,

আপনার তৈরি করা Firebase ডায়নামিক লিঙ্কগুলি পেতে, আপনাকে অবশ্যই আপনার অ্যাপে ডায়নামিক লিঙ্ক SDK অন্তর্ভুক্ত করতে হবে এবং একটি firebase::dynamic_links::Listener অবজেক্ট তৈরি করতে হবে যা OnDynamicLinkReceived ভার্চুয়াল ফাংশন প্রয়োগ করে।

C++ SDK প্রতিটি প্ল্যাটফর্মের জন্য প্রয়োজনীয় কিছু অতিরিক্ত সেটআপ সহ Android এবং iOS উভয়ের জন্যই কাজ করে।

তুমি শুরু করার আগে

আপনি Firebase ডায়নামিক লিঙ্কগুলি ব্যবহার করার আগে, আপনাকে এটি করতে হবে:

  • আপনার C++ প্রজেক্ট নিবন্ধন করুন এবং Firebase ব্যবহার করতে কনফিগার করুন।

    যদি আপনার C++ প্রোজেক্ট ইতিমধ্যেই Firebase ব্যবহার করে, তাহলে এটি ইতিমধ্যেই Firebase-এর জন্য নিবন্ধিত এবং কনফিগার করা আছে।

  • আপনার C++ প্রকল্পে Firebase C++ SDK যোগ করুন।

মনে রাখবেন যে আপনার C++ প্রজেক্টে Firebase যোগ করার জন্য Firebase কনসোল এবং আপনার খোলা C++ প্রজেক্টের উভয় কাজ জড়িত থাকে (উদাহরণস্বরূপ, আপনি কনসোল থেকে Firebase কনফিগার ফাইলগুলি ডাউনলোড করেন, তারপর সেগুলিকে আপনার C++ প্রকল্পে নিয়ে যান)।

কাস্টম URL স্কিম যোগ করুন (শুধুমাত্র iOS এর জন্য)

Firebase ডায়নামিক লিংক C++ ক্লায়েন্ট লাইব্রেরি iOS-এ কাস্টম ইউআরএল স্কিম ব্যবহার করে লিঙ্কগুলি প্রক্রিয়া করতে। ডায়নামিক লিঙ্ক প্রাপ্তি সমর্থন করার জন্য আপনাকে অবশ্যই আপনার অ্যাপে কাস্টম URL স্কিম যোগ করতে হবে।

  1. আপনার প্রজেক্ট কনফিগারেশন খুলতে, বাম ট্রি ভিউতে প্রজেক্টের নামে ডাবল-ক্লিক করুন।

  2. লক্ষ্য বিভাগ থেকে আপনার অ্যাপটি নির্বাচন করুন, তারপর তথ্য ট্যাবটি নির্বাচন করুন, তারপর URL প্রকার বিভাগটি প্রসারিত করুন৷

  3. + বোতামে ক্লিক করুন, তারপর আপনার বিপরীত ক্লায়েন্ট আইডির জন্য একটি URL স্কিম যোগ করুন। এই মান খুঁজে পেতে:

    1. GoogleService-Info.plist কনফিগারেশন ফাইলটি খুলুন, তারপর REVERSED_CLIENT_ID কীটি দেখুন৷

    2. সেই কীটির মান অনুলিপি করুন, তারপর কনফিগারেশন পৃষ্ঠার URL স্কিম বাক্সে পেস্ট করুন।

    3. অন্যান্য ক্ষেত্রগুলি ফাঁকা রাখুন।

  4. + বোতামে ক্লিক করুন, তারপরে একটি দ্বিতীয় URL স্কিম যোগ করুন। এটি আপনার অ্যাপের বান্ডেল আইডির মতোই।

    উদাহরণস্বরূপ, যদি আপনার বান্ডেল আইডি হয় com.example.ios , তাহলে URL স্কিম বক্সে সেই মানটি টাইপ করুন।

    আপনি প্রজেক্ট কনফিগারেশনের সাধারণ ট্যাবে আপনার অ্যাপের বান্ডিল আইডি খুঁজে পেতে পারেন ( Identity > Bundle Identifier )।

একটি ডায়নামিক লিঙ্ক প্রাপ্তি

অ্যাপ তৈরি করুন এবং শুরু করুন

আপনি প্রাপ্ত ডায়নামিক লিঙ্কগুলি পরীক্ষা করার আগে, আপনাকে একটি firebase::App অবজেক্ট তৈরি এবং শুরু করতে হবে।

firebase::App জন্য হেডার ফাইলটি অন্তর্ভুক্ত করুন:

#include "firebase/app.h"

পরবর্তী অংশ আপনার প্ল্যাটফর্মের উপর নির্ভর করে পরিবর্তিত হয়:

অ্যান্ড্রয়েড

firebase::App তৈরি করুন, JNI এনভায়রনমেন্ট পাস করা এবং আর্গুমেন্ট হিসাবে জাভা অ্যাক্টিভিটির একটি jobject রেফারেন্স:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);

iOS

firebase::App :

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));

ডায়নামিক লিঙ্কগুলি পরীক্ষা করতে শ্রোতাকে প্রয়োগ করুন

একটি প্রাপ্ত ডায়নামিক লিঙ্ক পরীক্ষা করতে, firebase::dynamic_links::Listener ক্লাস বাস্তবায়ন এবং ব্যবহার করুন।

ডায়নামিক লিঙ্কগুলি পাওয়ার জন্য হেডার ফাইলটি অন্তর্ভুক্ত করুন:

#include "firebase/dynamic_links.h"

ডায়নামিক লিঙ্ক লাইব্রেরি শুরু করুন:

::firebase::dynamic_links::Initialize(app, null);

firebase::dynamic_links::Listener প্রয়োগ করে এমন একটি অবজেক্ট তৈরি করুন এবং SetListener() এর সাথে এটি ডায়নামিক লিঙ্ক লাইব্রেরিতে সরবরাহ করুন, অথবা এটিকে Initialize করার জন্য দ্বিতীয় আর্গুমেন্ট হিসেবে পাস করুন।

ডায়নামিক লিঙ্কগুলি পেতে, আপনার শ্রোতা শ্রেণীকে অবশ্যই 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());
  }
};