পুরস্কার প্রদানকারী বিজ্ঞাপন হল এমন বিজ্ঞাপন যেগুলির সাথে ব্যবহারকারীরা ইন-অ্যাপ পুরস্কারের বিনিময়ে ইন্টার্যাক্ট করতে পারেন। এই গাইড থেকে আপনি জানতে পারবেন কীভাবে Unity অ্যাপে AdMob থেকে পুরস্কার প্রদানকারী বিজ্ঞাপন ইন্টিগ্রেট করতে হয়।
গ্রাহকদের সাফল্যের কিছু গল্প পড়ুন: কেস স্টাডি ১, কেস স্টাডি ২।Unity অ্যাপে কীভাবে পুরস্কার প্রদানকারী বিজ্ঞাপন ইন্টিগ্রেট করতে হয় তা এই নির্দেশিকায় ব্যাখ্যা করা হয়েছে।
পূর্বশর্ত
চালিয়ে যাওয়ার আগে, Google Mobile Ads Unity Plugin সেট-আপ করুন।
সবসময় টেস্ট বিজ্ঞাপন দিয়ে পরীক্ষা করুন
নিচে দেওয়া নমুনা কোডে একটি বিজ্ঞাপন ইউনিট আইডি আছে যা আপনি পরীক্ষামূলক বিজ্ঞাপন অনুরোধ করার জন্য ব্যবহার করতে পারবেন। প্রতিটি অনুরোধের জন্য প্রোডাকশন বিজ্ঞাপনের পরিবর্তে টেস্ট বিজ্ঞাপন রিটার্ন করার জন্য এটি বিশেষভাবে কনফিগার করা হয়েছে, যা এটিকে ব্যবহার করার জন্য নিরাপদ করে তোলে।
তবে, আপনি AdMob ওয়েব ইন্টারফেসে কোনও অ্যাপ রেজিস্টার করার পরে এবং আপনার অ্যাপে ব্যবহার করার জন্য নিজের বিজ্ঞাপন ইউনিট আইডি তৈরি করার পরে, ডেভেলপমেন্টের সময় স্পষ্টভাবে আপনার ডিভাইসকে টেস্ট ডিভাইস হিসেবে কনফিগার করুন।
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
Google Mobile Ads Unity Plugin চালু করুন
বিজ্ঞাপন লোড করার আগে, আপনার অ্যাপকে Google Mobile Ads Unity Plugin কল করে
MobileAds.Initialize() ইনিশিয়ালাইজ করুন। এটি শুধুমাত্র একবারই করতে হবে, আদর্শভাবে অ্যাপ লঞ্চ করার সময়।
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.
});
}
}
আপনি মধ্যস্থতা ব্যবহার করলে, কলব্যাক না হওয়া পর্যন্ত বিজ্ঞাপন লোড করবেন না, কারণ এর ফলে সব মধ্যস্থতা অ্যাডাপ্টার যে চালু হয়েছে তা নিশ্চিত করা যাবে।
পুরস্কার প্রদানকারী বিজ্ঞাপন লোড করা
পুরস্কার প্রদানকারী বিজ্ঞাপন লোড করার কাজটি
RewardedAd ক্লাসে স্ট্যাটিক Load() পদ্ধতি ব্যবহার করে সম্পন্ন করা হয়। সম্পূর্ণতা হ্যান্ডলারে লোড করা RewardedAd অবজেক্টকে
প্যারামিটার হিসেবে প্রদান করা হয়। নিচের উদাহরণে একটি পুরস্কার প্রদানকারী বিজ্ঞাপন লোড করা হয়েছে:
আপনার বিজ্ঞাপন ইউনিট আইডির সাথে AD_UNIT_ID পরিবর্তন করুন।
[ঐচ্ছিক] সার্ভার-সাইড যাচাইকরণ (SSV) কলব্যাক যাচাই করুন
সার্ভার-সাইড যাচাইকরণ
কলব্যাক করার জন্য যেসব অ্যাপের অতিরিক্ত ডেটা প্রয়োজন, সেগুলিকে পুরস্কার প্রদানকারী বিজ্ঞাপনের কাস্টম ডেটা ফিচার ব্যবহার করতে হবে।
পুরস্কার প্রদানকারী বিজ্ঞাপন অবজেক্টে সেট করা যেকোনও স্ট্রিং ভ্যালু SSV কলব্যাকের custom_data
কোয়েরি প্যারামিটারে পাস করা হয়। কোনও কাস্টম ডেটা ভ্যালু সেট করা না থাকলে, SSV কলব্যাকে
custom_data কোয়েরি প্যারামিটার ভ্যালু থাকবে না।
পুরস্কার প্রদানকারী বিজ্ঞাপন লোড হওয়ার পরে কীভাবে SSV বিকল্প সেট করতে হয় তা নিম্নলিখিত কোড স্যাম্পেল থেকে বোঝা যায়।
আপনার কাস্টম ডেটা দিয়ে SAMPLE_CUSTOM_DATA_STRING পরিবর্তন করুন।
আপনি কাস্টম পুরস্কার স্ট্রিং সেট করতে চাইলে, বিজ্ঞাপন দেখানোর আগে তা করতে হবে।
পুরস্কার কলব্যাক সহ পুরস্কার প্রদানকারী বিজ্ঞাপন দেখানো
আপনার বিজ্ঞাপন দেখানোর সময়, ব্যবহারকারীর জন্য পুরস্কার ম্যানেজ করতে
আপনাকে অবশ্যই একটি কলব্যাক প্রদান করতে হবে। প্রতিটি লোডে বিজ্ঞাপন একবারই দেখানো যাবে। বিজ্ঞাপন দেখানোর জন্য রেডি কিনা তা যাচাই করতে CanShowAd() পদ্ধতি ব্যবহার করুন।
পুরস্কার প্রদানকারী বিজ্ঞাপন দেখানোর সবচেয়ে ভালো পদ্ধতি নিম্নলিখিত কোডে দেখানো হয়েছে।
if (rewardedAd != null && rewardedAd.CanShowAd())
{
rewardedAd.Show((Reward reward) =>
{
// The ad was showen and the user earned a reward.
});
}
পুরস্কার প্রদানকারী বিজ্ঞাপন ইভেন্ট শোনা
আপনার বিজ্ঞাপনের আচরণ আরও কাস্টমাইজ করতে, আপনি বিজ্ঞাপনের লাইফসাইকেলে অনেক ইভেন্টে হুক করতে পারবেন। নিচের কোডটি বিজ্ঞাপন ইভেন্ট শোনে:
rewardedAd.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
rewardedAd.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
rewardedAd.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
rewardedAd.OnAdFullScreenContentOpened += () =>
{
// Raised when the ad opened full screen content.
};
rewardedAd.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
rewardedAd.OnAdFullScreenContentFailed += (AdError error) =>
{
// Raised when the ad failed to open full screen content.
};
পুরস্কার প্রদানকারী বিজ্ঞাপন পরিষ্কার করা
RewardedAd-এর কাজ শেষ হয়ে গেলে, Destroy()
মেথড কল করতে ভুলবেন না, তার আগে রেফারেন্স ড্রপ করবেন না:
if (rewardedAd != null)
{
rewardedAd.Destroy();
}
এটি প্লাগ-ইনকে জানায় যে অবজেক্টটি আর ব্যবহার করা হচ্ছে না এবং এটি যে মেমরি দখল করে আছে তা রিক্লেইম করা যেতে পারে। এই পদ্ধতি কল করতে না পারলে মেমরি লিক হতে পারে।
পরবর্তী পুরস্কার প্রদানকারী বিজ্ঞাপন প্রি-লোড করা
RewardedAd হল একবার ব্যবহারযোগ্য অবজেক্ট। এর অর্থ হল, একবার পুরস্কার প্রদানকারী বিজ্ঞাপন দেখানো হলে,
অবজেক্টটি আর ব্যবহার করা যাবে না। অন্য একটি পুরস্কার প্রদানকারী বিজ্ঞাপন অনুরোধ করতে,
আপনাকে একটি নতুন RewardedAd অবজেক্ট তৈরি করতে হবে।
পরবর্তী ইম্প্রেশনের সুযোগের জন্য পুরস্কার প্রদানকারী বিজ্ঞাপন প্রস্তুত করতে, OnAdFullScreenContentClosed বা
OnAdFullScreenContentFailed বিজ্ঞাপন ইভেন্ট হলে
পুরস্কার প্রদানকারী বিজ্ঞাপন একবার প্রি-লোড করুন।
অতিরিক্ত রিসোর্স
- HelloWorld উদাহরণ: সব বিজ্ঞাপন ফর্ম্যাটের ন্যূনতম প্রয়োগ।