تبلیغات بینابینی، تبلیغات تمام صفحهای هستند که رابط کاربری برنامه میزبان خود را میپوشانند. آنها معمولاً در نقاط انتقال طبیعی در جریان یک برنامه، مانند بین فعالیتها یا در طول مکث بین سطوح یک بازی، نمایش داده میشوند. وقتی یک برنامه یک تبلیغ بینابینی را نشان میدهد، کاربر میتواند انتخاب کند که یا روی تبلیغ ضربه بزند و به مقصد خود ادامه دهد یا آن را ببندد و به برنامه بازگردد.
این راهنما نحوه ادغام تبلیغات بینابینی در یک برنامه اندروید را توضیح میدهد.
پیشنیازها
- کیت توسعه نرمافزاری تبلیغات موبایلی گوگل (SDK) نسخه ۱۹.۷.۰ یا بالاتر.
- راهنمای شروع به کار را تکمیل کنید.
همیشه با تبلیغات آزمایشی تست کنید
هنگام ساخت و آزمایش برنامههای خود، مطمئن شوید که از تبلیغات آزمایشی به جای تبلیغات زنده و تولیدی استفاده میکنید. عدم انجام این کار میتواند منجر به مسدود شدن حساب شما شود.
سادهترین راه برای بارگذاری تبلیغات آزمایشی، استفاده از شناسه اختصاصی واحد تبلیغات آزمایشی ما برای تبلیغات بینابینی اندروید است:
/21775744923/example/interstitial
این ابزار به طور ویژه پیکربندی شده است تا برای هر درخواست، تبلیغات آزمایشی را برگرداند و شما میتوانید در برنامههای خود هنگام کدنویسی، آزمایش و اشکالزدایی از آن استفاده کنید. فقط قبل از انتشار برنامه، مطمئن شوید که آن را با شناسه واحد تبلیغاتی خود جایگزین میکنید.
برای اطلاعات بیشتر در مورد نحوه عملکرد تبلیغات آزمایشی SDK تبلیغات موبایلی گوگل، به بخش تبلیغات آزمایشی مراجعه کنید.
بارگذاری یک تبلیغ
برای بارگذاری یک تبلیغ بینابینی، متد استاتیک load() در AdManagerInterstitialAd را فراخوانی کنید و یک AdManagerInterstitialAdLoadCallback را برای دریافت تبلیغ بارگذاری شده یا هرگونه خطای احتمالی ارسال کنید. توجه داشته باشید که مانند سایر فراخوانیهای بارگذاری قالب، AdManagerInterstitialAdLoadCallback از LoadAdError برای ارائه جزئیات خطای با دقت بالاتر استفاده میکند.
جاوا
AdManagerInterstitialAd.load(
this,
AD_UNIT_ID,
new AdManagerAdRequest.Builder().build(),
new AdManagerInterstitialAdLoadCallback() {
@Override
public void onAdLoaded(@NonNull AdManagerInterstitialAd interstitialAd) {
Log.d(TAG, "Ad was loaded.");
MyActivity.this.interstitialAd = interstitialAd;
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
Log.d(TAG, loadAdError.getMessage());
interstitialAd = null;
}
});
کاتلین
AdManagerInterstitialAd.load(
this,
AD_UNIT_ID,
AdManagerAdRequest.Builder().build(),
object : AdManagerInterstitialAdLoadCallback() {
override fun onAdLoaded(interstitialAd: AdManagerInterstitialAd) {
Log.d(TAG, "Ad was loaded.")
this@MyActivity.interstitialAd = interstitialAd
}
override fun onAdFailedToLoad(adError: LoadAdError) {
Log.d(TAG, adError.message)
interstitialAd = null
}
},
)
تنظیم FullScreenContentCallback
تابع FullScreenContentCallback رویدادهای مربوط به نمایش InterstitialAd شما را مدیریت میکند. قبل از نمایش InterstitialAd ، حتماً تابع callback را تنظیم کنید:
جاوا
interstitialAd.setFullScreenContentCallback(
new FullScreenContentCallback() {
@Override
public void onAdDismissedFullScreenContent() {
// Called when fullscreen content is dismissed.
Log.d(TAG, "The ad was dismissed.");
// Make sure to set your reference to null so you don't
// show it a second time.
MyActivity.this.interstitialAd = null;
}
@Override
public void onAdFailedToShowFullScreenContent(AdError adError) {
// Called when fullscreen content failed to show.
Log.d(TAG, "The ad failed to show.");
// Make sure to set your reference to null so you don't
// show it a second time.
MyActivity.this.interstitialAd = null;
}
@Override
public void onAdShowedFullScreenContent() {
// Called when fullscreen content is shown.
Log.d(TAG, "The ad was shown.");
}
@Override
public void onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "The ad recorded an impression.");
}
@Override
public void onAdClicked() {
// Called when ad is clicked.
Log.d(TAG, "The ad was clicked.");
}
});
کاتلین
interstitialAd?.fullScreenContentCallback =
object : FullScreenContentCallback() {
override fun onAdDismissedFullScreenContent() {
// Called when fullscreen content is dismissed.
Log.d(TAG, "Ad was dismissed.")
// Don't forget to set the ad reference to null so you
// don't show the ad a second time.
interstitialAd = null
}
override fun onAdFailedToShowFullScreenContent(adError: AdError) {
// Called when fullscreen content failed to show.
Log.d(TAG, "Ad failed to show.")
// Don't forget to set the ad reference to null so you
// don't show the ad a second time.
interstitialAd = null
}
override fun onAdShowedFullScreenContent() {
// Called when fullscreen content is shown.
Log.d(TAG, "Ad showed fullscreen content.")
}
override fun onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.")
}
override fun onAdClicked() {
// Called when ad is clicked.
Log.d(TAG, "Ad was clicked.")
}
}
نمایش تبلیغ
تبلیغات بینابینی باید در طول مکثهای طبیعی در جریان یک برنامه نمایش داده شوند. بین مراحل یک بازی مثال خوبی است، یا پس از اینکه کاربر یک کار را انجام داد. برای نمایش یک تبلیغ بینابینی، از متد show() استفاده کنید.
جاوا
if (interstitialAd != null) {
interstitialAd.show(this);
} else {
Log.d(TAG, "The interstitial ad is still loading.");
}
کاتلین
interstitialAd?.show(this)
برخی از بهترین شیوهها
- در نظر بگیرید که آیا تبلیغات بینابینی نوع مناسبی از تبلیغ برای اپلیکیشن شما هستند یا خیر.
- تبلیغات بینابینی در برنامههایی که نقاط انتقال طبیعی دارند، بهترین عملکرد را دارند. پایان یک کار در یک برنامه، مانند به اشتراک گذاشتن یک تصویر یا تکمیل یک مرحله بازی، چنین نقطهای را ایجاد میکند. حتماً در نظر بگیرید که در کدام نقاط از گردش کار برنامه خود، تبلیغات بینابینی را نمایش خواهید داد و احتمالاً کاربر چگونه واکنش نشان خواهد داد.
- به یاد داشته باشید که هنگام نمایش یک تبلیغ بینابینی، عملیات را متوقف کنید.
- انواع مختلفی از تبلیغات بینابینی وجود دارد: متن، تصویر، ویدیو و موارد دیگر. مهم است که مطمئن شوید وقتی برنامه شما یک تبلیغ بینابینی را نمایش میدهد، استفاده از برخی منابع را نیز به حالت تعلیق در میآورد تا تبلیغ بتواند از آنها بهره ببرد. به عنوان مثال، وقتی فراخوانی برای نمایش یک تبلیغ بینابینی انجام میدهید، حتماً هرگونه خروجی صوتی تولید شده توسط برنامه خود را متوقف کنید.
- زمان بارگذاری کافی را در نظر بگیرید.
- همانطور که نمایش تبلیغات بینابینی در زمان مناسب مهم است، اطمینان از اینکه کاربر مجبور نیست برای بارگذاری آنها منتظر بماند نیز مهم است. بارگذاری اولیه تبلیغ با فراخوانی تابع
load()قبل از فراخوانی تابعshow()میتواند تضمین کند که برنامه شما در زمان نمایش، یک تبلیغ بینابینی کاملاً بارگذاری شده و آماده دارد. - کاربر را در معرض تبلیغات قرار ندهید.
- اگرچه افزایش تعداد دفعات نمایش تبلیغات بینابینی در اپلیکیشن شما ممکن است راهی عالی برای افزایش درآمد به نظر برسد، اما میتواند تجربه کاربری را نیز خراب کند و نرخ کلیک را کاهش دهد. مطمئن شوید که کاربران آنقدر زیاد در کارشان وقفه ایجاد نشود که دیگر نتوانند از استفاده از اپلیکیشن شما لذت ببرند.
مثالها در گیتهاب
مراحل بعدی
- درباره هدفگذاری تبلیغات بیشتر بدانید.
- درباره حریم خصوصی کاربران بیشتر بدانید.
- بهینهسازی مقداردهی اولیه SDK و بارگذاری تبلیغات (بتا) را بررسی کنید.