ইন্টারস্টিশিয়াল বিজ্ঞাপন হলো পূর্ণ-স্ক্রিনের বিজ্ঞাপন যা মূল অ্যাপের ইন্টারফেসকে ঢেকে দেয়। এগুলি সাধারণত অ্যাপের স্বাভাবিক কার্যপ্রবাহের মাঝে বিভিন্ন পর্যায়ে প্রদর্শিত হয়, যেমন কোনো গেমের দুটি লেভেলের মাঝের বিরতিতে। যখন কোনো অ্যাপ একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন দেখায়, তখন ব্যবহারকারীর কাছে দুটি বিকল্প থাকে: হয় বিজ্ঞাপনটিতে ট্যাপ করে তার গন্তব্যে চলে যাওয়া, অথবা সেটি বন্ধ করে অ্যাপে ফিরে আসা।
এই নির্দেশিকায় একটি ইউনিটি অ্যাপে কীভাবে ইন্টারস্টিশিয়াল বিজ্ঞাপন যুক্ত করতে হয় তা ব্যাখ্যা করা হয়েছে।
পূর্বশর্ত
চালিয়ে যাওয়ার আগে, Google Mobile Ads Unity Plugin সেট আপ করুন ।
সর্বদা টেস্ট অ্যাড দিয়ে পরীক্ষা করুন
নিম্নলিখিত নমুনা কোডটিতে একটি অ্যাড ইউনিট আইডি রয়েছে যা আপনি টেস্ট অ্যাড অনুরোধ করতে ব্যবহার করতে পারেন। এটিকে বিশেষভাবে কনফিগার করা হয়েছে যাতে প্রতিটি অনুরোধের জন্য প্রোডাকশন অ্যাডের পরিবর্তে টেস্ট অ্যাড ফেরত আসে, ফলে এটি ব্যবহার করা নিরাপদ।
তবে, অ্যাড ম্যানেজার ওয়েব ইন্টারফেসে একটি অ্যাপ নিবন্ধন করার পর এবং আপনার অ্যাপে ব্যবহারের জন্য নিজস্ব অ্যাড ইউনিট আইডি তৈরি করার পরে, ডেভেলপমেন্ট চলাকালীন আপনার ডিভাইসটিকে একটি টেস্ট ডিভাইস হিসেবে স্পষ্টভাবে কনফিগার করুন ।
/21775744923/example/interstitial
Google Mobile Ads Unity Plugin শুরু করুন
বিজ্ঞাপন লোড করার আগে, MobileAds.Initialize() কল করে আপনার অ্যাপকে Google Mobile Ads Unity Plugin চালু করতে দিন। এটি শুধুমাত্র একবার করা প্রয়োজন, আদর্শগতভাবে অ্যাপ চালু করার সময়।
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize Google Mobile Ads Unity Plugin.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
আপনি যদি মিডিয়েশন ব্যবহার করেন, তাহলে বিজ্ঞাপন লোড করার আগে কলব্যাকটি ঘটা পর্যন্ত অপেক্ষা করুন, কারণ এটি নিশ্চিত করবে যে সমস্ত মিডিয়েশন অ্যাডাপ্টার ইনিশিয়ালাইজ হয়েছে।
ইন্টারস্টিশিয়াল বিজ্ঞাপন লোড করুন
InterstitialAd ক্লাসের স্ট্যাটিক Load() মেথড ব্যবহার করে একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন লোড করা হয়। লোড মেথডটির জন্য একটি অ্যাড ইউনিট আইডি, একটি AdManagerAdRequest অবজেক্ট এবং একটি কমপ্লিশন হ্যান্ডলার প্রয়োজন, যা বিজ্ঞাপন লোডিং সফল বা ব্যর্থ হলে কল করা হয়। লোড করা AdManagerInterstitialAd অবজেক্টটি কমপ্লিশন হ্যান্ডলারে একটি প্যারামিটার হিসেবে প্রদান করা হয়। নিম্নলিখিত উদাহরণটি AdManagerInterstitialAd লোড করে:
AD_UNIT_ID এর জায়গায় আপনার অ্যাড ইউনিট আইডি বসান।
মধ্যবর্তী বিজ্ঞাপনটি দেখান
লোড করা ইন্টারস্টিশিয়াল বিজ্ঞাপন দেখানোর জন্য, AdManagerInterstitialAd ইনস্ট্যান্সের Show() মেথডটি কল করুন। প্রতি লোডে বিজ্ঞাপন একবার দেখানো যেতে পারে। বিজ্ঞাপনটি দেখানোর জন্য প্রস্তুত কিনা তা যাচাই করতে CanShowAd() মেথডটি ব্যবহার করুন।
if (interstitialAd != null && interstitialAd.CanShowAd())
{
interstitialAd.Show();
}
মধ্যবর্তী বিজ্ঞাপন ইভেন্টগুলি শুনুন
আপনার বিজ্ঞাপনের আচরণকে আরও কাস্টমাইজ করতে, আপনি বিজ্ঞাপনের লাইফসাইকেলের বিভিন্ন ইভেন্টে হুক করতে পারেন। নিচের উদাহরণটি বিজ্ঞাপনের ইভেন্টগুলো শোনে:
interstitialAd.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
interstitialAd.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
interstitialAd.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
interstitialAd.OnAdFullScreenContentOpened += () =>
{
// Raised when the ad opened full screen content.
};
interstitialAd.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
interstitialAd.OnAdFullScreenContentFailed += (AdError error) =>
{
// Raised when the ad failed to open full screen content.
};
মধ্যবর্তী বিজ্ঞাপনটি পরিষ্কার করুন
যখন আপনি একটি AdManagerInterstitialAd কাজ শেষ করবেন, তখন সেটির রেফারেন্স বাদ দেওয়ার আগে অবশ্যই Destroy() মেথডটি কল করবেন:
if (interstitialAd != null)
{
interstitialAd.Destroy();
}
এটি প্লাগইনকে জানিয়ে দেয় যে অবজেক্টটি আর ব্যবহৃত হচ্ছে না এবং এর দখল করা মেমরি পুনরুদ্ধার করা যেতে পারে। এই মেথডটি কল করতে ব্যর্থ হলে মেমরি লিক হয়।
পরবর্তী ইন্টারস্টিশিয়াল বিজ্ঞাপনটি প্রি-লোড করুন।
ইন্টারস্টিশিয়াল বিজ্ঞাপন একটি একবার ব্যবহারযোগ্য অবজেক্ট। এর মানে হলো, একবার একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন দেখানো হলে, অবজেক্টটি আর ব্যবহার করা যাবে না। আরেকটি ইন্টারস্টিশিয়াল বিজ্ঞাপনের অনুরোধ করতে, একটি নতুন AdManagerInterstitialAd অবজেক্ট তৈরি করুন।
পরবর্তী ইম্প্রেশনের সুযোগের জন্য একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন প্রস্তুত করতে, OnAdFullScreenContentClosed বা OnAdFullScreenContentFailed অ্যাড ইভেন্টটি ঘটলে বিজ্ঞাপনটি প্রি-লোড করুন।
সর্বোত্তম অনুশীলন
- আপনার অ্যাপের জন্য ইন্টারস্টিশিয়াল বিজ্ঞাপন সঠিক ধরনের বিজ্ঞাপন কিনা তা নির্ধারণ করুন।
- যেসব অ্যাপে স্বাভাবিক পরিবর্তনের সুযোগ থাকে, সেখানে ইন্টারস্টিশিয়াল বিজ্ঞাপন সবচেয়ে ভালো কাজ করে। অ্যাপের মধ্যে কোনো কাজ শেষ করা, যেমন একটি ছবি শেয়ার করা বা গেমের একটি লেভেল সম্পূর্ণ করা, এমন একটি মুহূর্ত তৈরি করে। আপনার অ্যাপের কার্যপ্রবাহের কোন পর্যায়ে ইন্টারস্টিশিয়াল বিজ্ঞাপন দেখানো সবচেয়ে ভালো হবে এবং ব্যবহারকারী কীভাবে প্রতিক্রিয়া জানাতে পারে, তা অবশ্যই বিবেচনা করুন।
- মধ্যবর্তী বিজ্ঞাপন দেখানোর সময় কার্যক্রমটি থামিয়ে দিন।
- টেক্সট, ছবি বা ভিডিওর মতো বিভিন্ন ধরণের ইন্টারস্টিশিয়াল বিজ্ঞাপন রয়েছে। এটা নিশ্চিত করা গুরুত্বপূর্ণ যে, যখন আপনার অ্যাপ একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন প্রদর্শন করে, তখন এটি যেন কিছু রিসোর্সের ব্যবহারও স্থগিত রাখে, যাতে বিজ্ঞাপনটি সেগুলোর সুবিধা নিতে পারে। উদাহরণস্বরূপ, যখন আপনি একটি ইন্টারস্টিশিয়াল বিজ্ঞাপন দেখানোর জন্য কল করেন, তখন আপনার অ্যাপ দ্বারা উৎপাদিত যেকোনো অডিও আউটপুট অবশ্যই থামিয়ে দিন। আপনি
OnAdFullScreenContentClosed()ইভেন্টে শব্দ বাজানো পুনরায় শুরু করতে পারেন, যা ব্যবহারকারী বিজ্ঞাপনের সাথে ইন্টারঅ্যাক্ট করা শেষ করলে কল করা যেতে পারে। এছাড়াও, বিজ্ঞাপনটি প্রদর্শিত হওয়ার সময় গেম লুপের মতো যেকোনো ইনটেন্স কম্পিউটেশন টাস্ক সাময়িকভাবে বন্ধ রাখার কথা বিবেচনা করুন। এটি নিশ্চিত করে যে ব্যবহারকারী ধীর বা প্রতিক্রিয়াহীন গ্রাফিক্স অথবা আটকে আটকে যাওয়া ভিডিওর সম্মুখীন হবেন না। - ব্যবহারকারীকে বিজ্ঞাপন দিয়ে ভারাক্রান্ত করবেন না।
- আপনার অ্যাপে ইন্টারস্টিশিয়াল বিজ্ঞাপনের সংখ্যা বাড়ানো আয় বাড়ানোর একটি দুর্দান্ত উপায় বলে মনে হলেও, এটি ব্যবহারকারীর অভিজ্ঞতাকে খারাপ করতে পারে এবং ক্লিক-থ্রু রেট কমিয়ে দিতে পারে। নিশ্চিত করুন যে ব্যবহারকারীরা যেন এত ঘন ঘন বাধাগ্রস্ত না হন যে তারা আপনার অ্যাপটি ব্যবহার করা আর উপভোগ করতে না পারেন।
অতিরিক্ত সম্পদ
- হ্যালোওয়ার্ল্ড উদাহরণ : সকল বিজ্ঞাপন ফরম্যাটের একটি সংক্ষিপ্ত বাস্তবায়ন।