آگهیهای بینابینی آگهیهای تمامصفحهای هستند که میانای برنامه میزبانشان را میپوشانند. این آگهیها معمولاً در نقاط انتقال طبیعی در جریان برنامه نمایش داده میشوند، مثلاً درطول وقفه بین مراحل بازی. وقتی برنامهای آگهی بینابینی نشان میدهد، کاربر میتواند روی آگهی تکضرب بزند و به مقصد آن برود یا آن را ببندد و به برنامه برگردد. مطالعه موردی.
این راهنما نحوه ادغام آگهیهای بینابینی در برنامه Unity را توضیح میدهد.
پیشنیازها
پیشاز ادامه دادن، Google Mobile Ads Unity Plugin را راهاندازی کنید.
همیشه با آگهیهای آزمایشی آزمایش کنید
کد نمونه زیر حاوی شناسه واحد آگهی است که میتوانید از آن برای درخواست آگهیهای آزمایشی استفاده کنید. این شناسه بهطور ویژه پیکربندی شده است تا برای هر درخواست، آگهیهای آزمایشی را بهجای آگهیهای تولیدی برگرداند و استفاده از آن را ایمن کند.
بااینحال، پساز ثبت برنامه در میانای وب AdMob و ایجاد شناسههای واحد آگهی خودتان برای استفاده در برنامه، صریحاً دستگاهتان را بهعنوان دستگاه آزمایشی پیکربندی کنید درطول توسعه.
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
مقداردهی اولیه 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.
});
}
}
اگر از میانجیگری استفاده میکنید، قبلاز بار کردن آگهیها صبر کنید تا فراخوانی برگشتی انجام شود زیرا این کار تضمین میکند که همه آداپتورهای میانجیگری مقداردهی اولیه شدهاند.
بار کردن آگهی بینابینی
بار کردن آگهی بینابینی بااستفاده از روش ثابت Load() در کلاس InterstitialAd انجام میشود. روش بارگیری به شناسه واحد آگهی، شیء
AdRequest، و گرداننده تکمیل نیاز دارد که
هنگام موفقیت یا شکست بارگیری آگهی فراخوانی میشود. شیء InterstitialAd بارشده بهعنوان پارامتر در گرداننده تکمیل ارائه میشود. مثال زیر InterstitialAd را بار میکند:
AD_UNIT_ID را با شناسه واحد آگهیتان جایگزین کنید.
نمایش آگهی بینابینی
برای نمایش آگهی بینابینی بارشده، روش Show() را در نمونه
InterstitialAd فراخوانی کنید. آگهیها ممکن است یک بار در هر بارگذاری نشان داده شوند. از روش 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.
};
پاک کردن آگهی بینابینی
وقتی کارتان با InterstitialAd تمام شد، حتماً
پیشاز رها کردن ارجاع به آن، روش Destroy() را فراخوانی کنید:
if (interstitialAd != null)
{
interstitialAd.Destroy();
}
این کار به افزونه اطلاع میدهد که دیگر از شیء استفاده نمیشود و حافظهای که اشغال کرده است میتواند بازپس گرفته شود. عدم فراخوانی این روش منجر به نشت حافظه میشود.
پیشبار کردن آگهی بینابینی بعدی
آگهیهای بینابینی شیء یکبار مصرف هستند. این یعنی وقتی آگهی بینابینی
نشان داده میشود، دیگر نمیتوان از آن شیء استفاده کرد. برای درخواست آگهی بینابینی دیگر،
شیء InterstitialAd جدیدی ایجاد کنید.
برای آماده کردن آگهی بینابینی برای فرصت ظهور بعدی، آگهی بینابینی را بهمحض مطرح شدن رویداد آگهی OnAdFullScreenContentClosed یا OnAdFullScreenContentFailed پیشبارگیری کنید.
روالهای مطلوب
- تعیین کنید که آیا آگهیهای بینابینی نوع مناسبی از آگهی برای برنامه شما هستند یا نه.
- آگهیهای بینابینی در برنامههایی که نقاط انتقال طبیعی دارند بهترین عملکرد را دارند. پایان یک تکلیف در برنامه، مثل همرسانی تصویر یا تکمیل کردن سطح بازی، چنین نقطهای را ایجاد میکند. مطمئن شوید که درنظر گرفتهاید در کدام نقاط از جریان برنامهتان، آگهیهای بینابینی را به بهترین شکل نمایش دهید و کاربر احتمالاً چگونه پاسخ خواهد داد.
- هنگام نمایش آگهی بینابینی، کنش را موقتاً متوقف کنید.
- انواع مختلفی از آگهیهای بینابینی وجود دارد، مانند نوشتار،
تصویر، یا ویدیو. مهم است مطمئن شوید که وقتی برنامهتان آگهی بینابینی نمایش میدهد، استفاده از برخی منابع را نیز بهحالت تعلیق درآورد تا آگهی بتواند از آنها استفاده کند. برای مثال، وقتی برای نمایش آگهی بینابینی تماس برقرار میکنید، حتماً هرگونه خروجی صوتی را که برنامهتان تولید میکند موقتاً متوقف کنید.
میتوانید پخش صدا را در رویداد
OnAdFullScreenContentClosed()ازسر بگیرید، که میتواند زمانی فراخوانده شود که کاربر تعامل با آگهی را بهپایان رسانده باشد. علاوهبراین، توصیه میشود درحین نمایش آگهی، هرگونه تکلیف محاسباتی سنگین، مانند حلقه بازی، را موقتاً متوقف کنید. این کار تضمین میکند که کاربر با گرافیک کند یا غیرپاسخگو یا ویدیو با وقفه مواجه نشود. - کاربر را با آگهی بمباران نکنید.
- درحالیکه افزایش تعداد آگهیهای بینابینی در برنامهتان ممکن است راهی عالی برای افزایش درآمد بهنظر برسد، میتواند تجربه کاربری را نیز تضعیف کند و نرخ کلیکگذری را کاهش دهد. مطمئن شوید که کاربران آنقدر مکرر مورد وقفه قرار نمیگیرند که دیگر نتوانند از استفاده از برنامه شما لذت ببرند.
منابع بیشتر
- نمونه HelloWorld: پیادهسازی حداقلی همه قالبهای آگهی.