تبلیغات با پاداش

پلتفرم را انتخاب کنید: Android iOS Unity Flutter

تبلیغات پاداش، تبلیغاتی هستند که کاربران می‌توانند در ازای دریافت جوایز درون‌برنامه، با آن‌ها تعامل داشته باشند. این راهنما به شما نشان می‌دهد که چگونه تبلیغات با پاداش AdMob را در برنامه Unity ادغام کنید.

این راهنما نحوه ادغام تبلیغات با پاداش را در برنامه Unity توضیح می دهد.

پیش نیازها

همیشه با تبلیغات آزمایشی تست کنید

کد نمونه زیر حاوی شناسه واحد تبلیغاتی است که می توانید از آن برای درخواست تبلیغات آزمایشی استفاده کنید. این به طور ویژه برای بازگرداندن تبلیغات آزمایشی به جای تبلیغات تولیدی برای هر درخواست پیکربندی شده است و استفاده از آن را ایمن می کند.

با این حال، پس از اینکه برنامه‌ای را در رابط وب Ad Manager ثبت کردید و شناسه‌های واحد تبلیغاتی خود را برای استفاده در برنامه خود ایجاد کردید، دستگاه خود را به صراحت به عنوان یک دستگاه آزمایشی در حین توسعه پیکربندی کنید .

/21775744923/example/rewarded

SDK تبلیغات موبایل را راه اندازی کنید

قبل از بارگیری تبلیغات، از برنامه خود بخواهید با فراخوانی MobileAds.Initialize() SDK تبلیغات موبایل را مقداردهی اولیه کند. این کار باید فقط یک بار انجام شود، ایده آل در هنگام راه اندازی برنامه.

using GoogleMobileAds;
using GoogleMobileAds.Api;

public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // Initialize the Google Mobile Ads SDK.
        MobileAds.Initialize((InitializationStatus initStatus) =>
        {
            // This callback is called once the MobileAds SDK is initialized.
        });
    }
}

اگر از میانجی‌گری استفاده می‌کنید، منتظر بمانید تا قبل از بارگیری آگهی‌ها، پاسخ تماس رخ دهد، زیرا این کار اطمینان حاصل می‌کند که همه آداپتورهای میانجی اولیه هستند.

آگهی پاداش را بارگیری کنید

بارگذاری یک تبلیغ با پاداش با استفاده از روش Load() استاتیک در کلاس RewardedAd انجام می شود. آبجکت RewardedAd بارگذاری شده به عنوان یک پارامتر در کنترل کننده تکمیل ارائه می شود. مثال زیر یک تبلیغ با پاداش را بارگیری می کند:

// Create our request used to load the ad.
var adRequest = new AdRequest();

// Send the request to load the ad.
RewardedAd.Load("AD_UNIT_ID", adRequest, (RewardedAd ad, LoadAdError error) =>
{
    if (error != null)
    {
        // The ad failed to load.
        return;
    }
    // The ad loaded successfully.
});

شناسه واحد تبلیغات خود را جایگزین AD_UNIT_ID کنید.

[اختیاری] تأیید اعتبار سمت سرور (SSV) تماس های برگشتی

برنامه‌هایی که به داده‌های اضافی در تماس‌های تأیید سمت سرور نیاز دارند، باید از ویژگی داده سفارشی تبلیغات پاداش استفاده کنند. هر مقدار رشته تنظیم شده روی یک شیء تبلیغاتی پاداش داده شده به پارامتر query custom_data در SSV ارسال می شود. اگر مقدار داده سفارشی تنظیم نشده باشد، مقدار پارامتر query custom_data در پاسخ تماس SSV وجود نخواهد داشت.

نمونه کد زیر نحوه تنظیم گزینه های SSV را پس از بارگیری تبلیغ پاداش نشان می دهد.

// Create and pass the SSV options to the rewarded ad.
var options = new ServerSideVerificationOptions
{
    CustomData = ""SAMPLE_CUSTOM_DATA_STRING""
};

rewardedAd.SetServerSideVerificationOptions(options);

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 ، آگهی پاداش را از قبل بارگیری کنید.

rewardedAd.OnAdFullScreenContentClosed += () =>
{
    // Reload the ad so that we can show another as soon as possible.
    var adRequest = new AdRequest();
    RewardedAd.Load("AD_UNIT_ID", adRequest, (RewardedAd ad, LoadAdError error) =>
    {
        // Handle ad loading here.
    });
};

منابع اضافی

،
پلتفرم را انتخاب کنید: Android iOS Unity Flutter

تبلیغات پاداش، تبلیغاتی هستند که کاربران می‌توانند در ازای دریافت جوایز درون‌برنامه، با آن‌ها تعامل داشته باشند. این راهنما به شما نشان می‌دهد که چگونه تبلیغات با پاداش AdMob را در برنامه Unity ادغام کنید.

این راهنما نحوه ادغام تبلیغات با پاداش را در برنامه Unity توضیح می دهد.

پیش نیازها

همیشه با تبلیغات آزمایشی تست کنید

کد نمونه زیر حاوی شناسه واحد تبلیغاتی است که می توانید از آن برای درخواست تبلیغات آزمایشی استفاده کنید. این به طور ویژه برای بازگرداندن تبلیغات آزمایشی به جای تبلیغات تولیدی برای هر درخواست پیکربندی شده است و استفاده از آن را ایمن می کند.

با این حال، پس از اینکه برنامه‌ای را در رابط وب Ad Manager ثبت کردید و شناسه‌های واحد تبلیغاتی خود را برای استفاده در برنامه خود ایجاد کردید، دستگاه خود را به صراحت به عنوان یک دستگاه آزمایشی در حین توسعه پیکربندی کنید .

/21775744923/example/rewarded

SDK تبلیغات موبایل را راه اندازی کنید

قبل از بارگیری تبلیغات، از برنامه خود بخواهید با فراخوانی MobileAds.Initialize() SDK تبلیغات موبایل را مقداردهی اولیه کند. این کار باید فقط یک بار انجام شود، ایده آل در هنگام راه اندازی برنامه.

using GoogleMobileAds;
using GoogleMobileAds.Api;

public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // Initialize the Google Mobile Ads SDK.
        MobileAds.Initialize((InitializationStatus initStatus) =>
        {
            // This callback is called once the MobileAds SDK is initialized.
        });
    }
}

اگر از میانجی‌گری استفاده می‌کنید، منتظر بمانید تا قبل از بارگیری آگهی‌ها، پاسخ تماس رخ دهد، زیرا این کار اطمینان حاصل می‌کند که همه آداپتورهای میانجی اولیه هستند.

آگهی پاداش را بارگیری کنید

بارگذاری یک تبلیغ با پاداش با استفاده از روش Load() استاتیک در کلاس RewardedAd انجام می شود. آبجکت RewardedAd بارگذاری شده به عنوان یک پارامتر در کنترل کننده تکمیل ارائه می شود. مثال زیر یک تبلیغ با پاداش را بارگیری می کند:

// Create our request used to load the ad.
var adRequest = new AdRequest();

// Send the request to load the ad.
RewardedAd.Load("AD_UNIT_ID", adRequest, (RewardedAd ad, LoadAdError error) =>
{
    if (error != null)
    {
        // The ad failed to load.
        return;
    }
    // The ad loaded successfully.
});

شناسه واحد تبلیغات خود را جایگزین AD_UNIT_ID کنید.

[اختیاری] تأیید اعتبار سمت سرور (SSV) تماس های برگشتی

برنامه‌هایی که به داده‌های اضافی در تماس‌های تأیید سمت سرور نیاز دارند، باید از ویژگی داده سفارشی تبلیغات پاداش استفاده کنند. هر مقدار رشته تنظیم شده روی یک شیء تبلیغاتی پاداش داده شده به پارامتر query custom_data در SSV ارسال می شود. اگر مقدار داده سفارشی تنظیم نشده باشد، مقدار پارامتر query custom_data در پاسخ تماس SSV وجود نخواهد داشت.

نمونه کد زیر نحوه تنظیم گزینه های SSV را پس از بارگیری تبلیغ پاداش نشان می دهد.

// Create and pass the SSV options to the rewarded ad.
var options = new ServerSideVerificationOptions
{
    CustomData = ""SAMPLE_CUSTOM_DATA_STRING""
};

rewardedAd.SetServerSideVerificationOptions(options);

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 ، آگهی پاداش را از قبل بارگیری کنید.

rewardedAd.OnAdFullScreenContentClosed += () =>
{
    // Reload the ad so that we can show another as soon as possible.
    var adRequest = new AdRequest();
    RewardedAd.Load("AD_UNIT_ID", adRequest, (RewardedAd ad, LoadAdError error) =>
    {
        // Handle ad loading here.
    });
};

منابع اضافی