ইন্টারস্টিশিয়াল বিজ্ঞাপন হল পূর্ণ-স্ক্রীন বিজ্ঞাপন যা ব্যবহারকারীর দ্বারা বন্ধ না হওয়া পর্যন্ত একটি অ্যাপের ইন্টারফেস কভার করে। এগুলি সাধারণত একটি অ্যাপের প্রবাহের প্রাকৃতিক ট্রানজিশন পয়েন্টে প্রদর্শিত হয়, যেমন কার্যকলাপের মধ্যে বা একটি গেমের স্তরগুলির মধ্যে বিরতির সময়। যখন একটি অ্যাপ একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন দেখায়, ব্যবহারকারীর পছন্দ থাকে বিজ্ঞাপনটিতে ট্যাপ করে তার গন্তব্যে চালিয়ে যেতে বা এটি বন্ধ করে অ্যাপে ফিরে যেতে পারে। কেস স্টাডি ।
Google মোবাইল বিজ্ঞাপন C++ SDK ব্যবহার করে অ্যান্ড্রয়েড এবং iOS অ্যাপে কীভাবে ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলিকে একীভূত করতে হয় এই নির্দেশিকা আপনাকে দেখায়।
পূর্বশর্ত
- সম্পূর্ণ করুন শুরু করুন ।
- (শুধুমাত্র অ্যান্ড্রয়েড) JNI
jobject
রেফারেন্সের সাথে কাজ করা পরিচিতি ( এন্ড্রয়েড জেএনআই টিপস দেখুন)।
সর্বদা পরীক্ষার বিজ্ঞাপন দিয়ে পরীক্ষা করুন
আপনার অ্যাপ তৈরি এবং পরীক্ষা করার সময়, নিশ্চিত করুন যে আপনি লাইভ, প্রোডাকশন বিজ্ঞাপনের পরিবর্তে পরীক্ষামূলক বিজ্ঞাপন ব্যবহার করছেন। এটি করতে ব্যর্থ হলে আপনার অ্যাকাউন্ট স্থগিত হতে পারে।
পরীক্ষার বিজ্ঞাপন লোড করার সবচেয়ে সহজ উপায় হল ইন্টারস্টিশিয়ালের জন্য আমাদের ডেডিকেটেড টেস্ট বিজ্ঞাপন ইউনিট আইডি ব্যবহার করা, যা ডিভাইস প্ল্যাটফর্ম অনুসারে পরিবর্তিত হয়:
- অ্যান্ড্রয়েড:
ca-app-pub-3940256099942544/1033173712
- iOS:
ca-app-pub-3940256099942544/4411468910
প্রতিটি অনুরোধের জন্য পরীক্ষার বিজ্ঞাপনগুলি ফেরত দেওয়ার জন্য এগুলিকে বিশেষভাবে কনফিগার করা হয়েছে এবং কোডিং, পরীক্ষা এবং ডিবাগ করার সময় আপনি এটিকে আপনার নিজস্ব অ্যাপে ব্যবহার করতে পারবেন৷ আপনার অ্যাপ প্রকাশ করার আগে শুধু নিশ্চিত করুন যে আপনি এটিকে আপনার নিজের বিজ্ঞাপন ইউনিট আইডি দিয়ে প্রতিস্থাপন করেছেন।
মোবাইল বিজ্ঞাপন SDK-এর পরীক্ষার বিজ্ঞাপনগুলি কীভাবে কাজ করে সে সম্পর্কে আরও তথ্যের জন্য, পরীক্ষা বিজ্ঞাপনগুলি দেখুন।
বাস্তবায়ন
ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলিকে সংহত করার প্রধান পদক্ষেপগুলি হল:
- একটি বিজ্ঞাপন লোড করুন.
- কলব্যাকের জন্য নিবন্ধন করুন।
- বিজ্ঞাপনটি প্রদর্শন করুন এবং এর জীবনচক্রের ঘটনাগুলি পরিচালনা করুন৷
একটি InterstitialAd
কনফিগার করুন
ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলি InterstitialAd
অবজেক্টে প্রদর্শিত হয়, তাই আপনার অ্যাপে ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলিকে একীভূত করার প্রথম ধাপ হল একটি InterstitialAd
অবজেক্ট তৈরি করা এবং আরম্ভ করা।
আপনার অ্যাপের C++ কোডে নিম্নলিখিত হেডার যোগ করুন:
#include "firebase/gma/interstial_ad.h"
একটি
InterstitialAd
অবজেক্ট ঘোষণা করুন এবং তাৎক্ষণিক করুন:firebase::gma::InterstitialAd* interstitial_ad; interstitial_ad = new firebase::gma::InterstitialAd();
একটি
AdParent
প্রকারে আপনার প্যারেন্ট ভিউ কাস্ট ব্যবহার করেInterstitialAd
অ্যাড ইনস্ট্যান্স শুরু করুন। প্যারেন্ট ভিউ হল একটি অ্যান্ড্রয়েডActivity
জন্য একটি JNIjobject
রেফারেন্স বা একটি iOSUIView
এর একটি পয়েন্টার।// my_ad_parent is a jobject reference to an Android Activity or // a pointer to an iOS UIView. firebase::gma::AdParent ad_parent = static_cast<firebase::gma::AdParent>(my_ad_parent); firebase::Future<void> result = interstitial_ad->Initialize(ad_parent);
ভেরিয়েবল হিসেবে ভবিষ্যৎ ধরে রাখার বিকল্প হিসেবে, আপনি পর্যায়ক্রমে
InterstitialAd
অবজেক্টেInitializeLastResult()
ব্যবহার করে ইনিশিয়ালাইজেশন অপারেশনের স্থিতি পরীক্ষা করতে পারেন। এটি আপনার গ্লোবাল গেম লুপে প্রারম্ভিক প্রক্রিয়ার ট্র্যাক রাখার জন্য সহায়ক হতে পারে।// Monitor the status of the future in your game loop: firebase::Future<void> result = interstitial_ad->InitializeLastResult(); if (result.status() == firebase::kFutureStatusComplete) { // Initialization completed. if(future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization successful. } else { // An error has occurred. } } else { // Initialization on-going. }
firebase::Future
সাথে কাজ করার বিষয়ে আরও তথ্যের জন্য, পদ্ধতি কলের সমাপ্তির স্থিতি নিরীক্ষণ করতে ফিউচার ব্যবহার করুন দেখুন।
একটি বিজ্ঞাপন লোড করুন
InterstitialAd
অবজেক্টে LoadAd()
পদ্ধতি ব্যবহার করে একটি বিজ্ঞাপন লোড করা হয়। লোড পদ্ধতির জন্য প্রয়োজন যে আপনি InterstitialAd
অবজেক্ট শুরু করেছেন এবং আপনার বিজ্ঞাপন ইউনিট আইডি এবং একটি AdRequest
অবজেক্ট আছে। একটি firebase::Future
ফেরত দেওয়া হয় যা আপনি লোড অপারেশনের অবস্থা এবং ফলাফল নিরীক্ষণ করতে ব্যবহার করতে পারেন।
InterstitialAd
সফলভাবে আরম্ভ হয়ে গেলে কীভাবে একটি বিজ্ঞাপন লোড করতে হয় তা নিম্নলিখিত কোডটি দেখায়:
firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result;
load_ad_result = interstitial_ad->LoadAd(interstitial_ad_unit_id, ad_request);
কলব্যাকের জন্য নিবন্ধন করুন
ইন্টারস্টিশিয়াল বিজ্ঞাপন উপস্থাপনা এবং লাইফসাইকেল ইভেন্টগুলির বিজ্ঞপ্তি পেতে আপনাকে অবশ্যই FullScreenContentListener
ক্লাস প্রসারিত করতে হবে। আপনার কাস্টম FullScreenContentListener
সাবক্লাসটি InterstitialAd::SetFullScreenContentListener()
পদ্ধতির মাধ্যমে নিবন্ধিত হতে পারে, এবং যখন বিজ্ঞাপনটি সফলভাবে বা অসফলভাবে উপস্থাপন করা হয় এবং সেই সাথে এটি খারিজ হয়ে গেলে এটি কলব্যাক পাবে।
নিম্নলিখিত কোডটি দেখায় যে কীভাবে ক্লাসটি প্রসারিত করতে হয় এবং এটি বিজ্ঞাপনে বরাদ্দ করতে হয়:
class ExampleFullScreenContentListener : public firebase::gma::FullScreenContentListener { public: ExampleFullScreenContentListener() {} void OnAdClicked() override { // This method is invoked when the user clicks the ad. } void OnAdDismissedFullScreenContent() override { // This method is invoked when the ad dismisses full screen content. } void OnAdFailedToShowFullScreenContent(const AdError& error) override { // This method is invoked when the ad failed to show full screen content. // Details about the error are contained within the AdError parameter. } void OnAdImpression() override { // This method is invoked when an impression is recorded for an ad. } void OnAdShowedFullScreenContent() override { // This method is invoked when the ad showed its full screen content. } }; ExampleFullScreenContentListener* full_screen_content_listener = new ExampleFullScreenContentListener(); interstitial_ad->SetFullScreenContentListener(full_screen_content_listener);
InterstitialAd
হল এক-বার ব্যবহার করা বস্তু। এর মানে হল একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন একবার দেখানো হলে, এটি আবার দেখানো যাবে না। একটি সর্বোত্তম অনুশীলন হল আপনার FullScreenContentListener
এর OnAdDismissedFullScreenContent()
পদ্ধতিতে অন্য একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন লোড করা যাতে আগেরটি খারিজ হওয়ার সাথে সাথে পরবর্তী ইন্টারস্টিশিয়াল বিজ্ঞাপনটি লোড হতে শুরু করে।
বিজ্ঞাপনটি প্রদর্শন করুন
একটি অ্যাপের প্রবাহে স্বাভাবিক বিরতির সময় ইন্টারস্টিশিয়ালগুলি প্রদর্শিত হওয়া উচিত। একটি গেমের স্তরগুলির মধ্যে একটি ভাল উদাহরণ, বা ব্যবহারকারী একটি টাস্ক সম্পূর্ণ করার পরে। একটি বিজ্ঞাপন কখন তার পূর্ণ স্ক্রীনের বিষয়বস্তু দেখিয়েছে তা নির্ধারণ করতে FullScreenContentListener
ব্যবহার করা গেলেও, Show()
দ্বারা প্রত্যাবর্তিত ভবিষ্যতটিও বিজ্ঞাপনটি সফলভাবে দেখানো হলে তা নির্দেশ করবে।
firebase::Future<void> result = interstitial_ad->Show();
সর্বোত্তম অনুশীলন
- ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলি আপনার অ্যাপের জন্য সঠিক ধরনের বিজ্ঞাপন কিনা তা বিবেচনা করুন।
- ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলি প্রাকৃতিক ট্রানজিশন পয়েন্ট সহ অ্যাপগুলিতে সবচেয়ে ভাল কাজ করে। একটি অ্যাপের মধ্যে একটি টাস্কের সমাপ্তি, যেমন একটি চিত্র ভাগ করা বা একটি গেমের স্তর সম্পূর্ণ করা, এমন একটি বিন্দু তৈরি করে। যেহেতু ব্যবহারকারী কর্মে বিরতির আশা করছেন, তাই তাদের অভিজ্ঞতা ব্যাহত না করে একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন উপস্থাপন করা সহজ। আপনার অ্যাপের কর্মপ্রবাহের কোন পয়েন্টে আপনি ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলি প্রদর্শন করবেন এবং ব্যবহারকারী কীভাবে প্রতিক্রিয়া জানাবে তা আপনি বিবেচনা করেছেন তা নিশ্চিত করুন৷
- একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন প্রদর্শন করার সময় ক্রিয়াটি বিরতি দিতে ভুলবেন না৷
- বিভিন্ন ধরনের ইন্টারস্টিশিয়াল বিজ্ঞাপন রয়েছে: পাঠ্য, ছবি, ভিডিও এবং আরও অনেক কিছু। এটি নিশ্চিত করা গুরুত্বপূর্ণ যে যখন আপনার অ্যাপ একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন প্রদর্শন করে, তখন এটি বিজ্ঞাপনটিকে সেগুলির সুবিধা নেওয়ার জন্য কিছু সংস্থানগুলির ব্যবহার স্থগিত করে। উদাহরণস্বরূপ, যখন আপনি একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন প্রদর্শন করার জন্য কল করেন, তখন আপনার অ্যাপ দ্বারা উত্পাদিত যেকোন অডিও আউটপুটকে বিরতি দিতে ভুলবেন না। আপনি আপনার ইনস্টল করা
FullScreenContentListener
এরOnAdDismissedFullScreenContent
পদ্ধতিতে সাউন্ড বাজানো আবার শুরু করতে পারেন যা ব্যবহারকারী বিজ্ঞাপনের সাথে ইন্টারঅ্যাক্ট করা শেষ করলে তা চালু করা হবে। এছাড়াও, বিজ্ঞাপনটি প্রদর্শিত হওয়ার সময় অস্থায়ীভাবে কোনো তীব্র গণনার কাজ (যেমন একটি গেম লুপ) বন্ধ করার কথা বিবেচনা করুন। এটি নিশ্চিত করবে যে ব্যবহারকারী ধীরগতির বা প্রতিক্রিয়াশীল গ্রাফিক্স বা তোতলানো ভিডিও অনুভব করবেন না। - পর্যাপ্ত লোডিং সময়ের জন্য অনুমতি দিন।
- আপনি একটি উপযুক্ত সময়ে ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলি প্রদর্শন করছেন তা নিশ্চিত করা যেমন গুরুত্বপূর্ণ, তেমনি ব্যবহারকারীকে সেগুলি লোড করার জন্য অপেক্ষা করতে হবে না তা নিশ্চিত করাও গুরুত্বপূর্ণ৷ আপনি দেখানোর ইচ্ছা করার আগে বিজ্ঞাপনটি আগে থেকে লোড করা নিশ্চিত করতে পারে যে আপনার অ্যাপে একটি সম্পূর্ণরূপে লোড হওয়া ইন্টারস্টিশিয়াল বিজ্ঞাপন রয়েছে যখন একটি প্রদর্শনের সময় আসে।
- বিজ্ঞাপন দিয়ে ব্যবহারকারীকে প্লাবিত করবেন না।
- যদিও আপনার অ্যাপে ইন্টারস্টিশিয়াল বিজ্ঞাপনের ফ্রিকোয়েন্সি বাড়ানোকে রাজস্ব বাড়ানোর একটি দুর্দান্ত উপায় বলে মনে হতে পারে, এটি ব্যবহারকারীর অভিজ্ঞতা এবং কম ক্লিকথ্রু রেটকেও হ্রাস করতে পারে। নিশ্চিত করুন যে ব্যবহারকারীরা এত ঘন ঘন বাধাগ্রস্ত হয় না যে তারা আর আপনার অ্যাপের ব্যবহার উপভোগ করতে পারবে না।
- ইন্টারস্টিশিয়াল দেখানোর জন্য লোড সমাপ্তির ভবিষ্যত ব্যবহার করবেন না।
- এটি একটি দুর্বল ব্যবহারকারীর অভিজ্ঞতার কারণ হতে পারে। পরিবর্তে, আপনাকে দেখানোর আগে বিজ্ঞাপনটি প্রি-লোড করুন।
অতিরিক্ত সম্পদ
গিটহাবের উদাহরণ
- GitHub-এ আমাদের উদাহরণ কুইকস্টার্ট অ্যাপের সোর্স কোড দেখুন।
মোবাইল বিজ্ঞাপন গ্যারেজ ভিডিও টিউটোরিয়াল
সাফল্যের গল্প
পরবর্তী পদক্ষেপ
- যদি আপনি ইতিমধ্যে না করে থাকেন, তাহলে AdMob UI- তে আপনার নিজস্ব ইন্টারস্টিশিয়াল বিজ্ঞাপন ইউনিট তৈরি করুন।
- বিজ্ঞাপন টার্গেটিং এবং ইন্টারস্টিশিয়াল বিজ্ঞাপন নির্দেশিকা সম্পর্কে জানুন।