برنماهای تطبیقی به شما امکان میدهند عرض آگهی را مشخص کنید تا اندازه بهینه آگهی برای هر دستگاه تعیین شود. برخلاف برنمای تطبیقی ثابت، برنمای تطبیقی درونخطی بزرگتر و بلندتر است و از ارتفاع ثابت استفاده نمیکند. بلندی برنمای تطبیقی بهخط متغیر است. این برنماها ممکن است کل صفحه یا حداکثر ارتفاعی را که مشخص میکنید پر کنند.
این راهنما ایجاد برنماهای تطبیقی درونخطی و تنظیم اندازه برنما را پوشش میدهد.
تصویر زیر برنماهای تطبیقی درونخطی را در محتوای پیمایشی نشان میدهد:
قبلاز شروع
قبلاز ادامه دادن، مطمئن شوید که آگهیهای برنمایی را راهاندازی کردهاید.
برای مشاهده نمونه کامل برنمای تطبیقی درونخط، برنامه نمونه زیر را بارگیری کنید:
پیادهسازی برنماهای تطبیقی بهخط
برای پیادهسازی برنماهای تطبیقی درونخطی، اندازه آگهی را تنظیم میکنید، درخواست آگهی ایجاد میکنید، و آگهی را بار میکنید.
برای تعیین اندازه برنمای تطبیقی درونخط، عرض آگهی را مشخص کنید. رویکردهای رایج شامل موارد زیر است:
- بااستفاده از عرض تمامصفحه.
- بااستفاده از پهنای چیدمان والد حاوی آگهی.
- درحال تنظیم عرض برای درنظر گرفتن مناطق امن دستگاه.
هنگام ایجاد شیء اندازه آگهی، از این عرض محاسبهشده استفاده کنید.
مراحل زیر را تکمیل کنید:
عرض دستگاهتان را دریافت کنید یا عرضی را تنظیم کنید:
Kotlin
private val adWidth: Int get() { val displayMetrics = resources.displayMetrics val adWidthPixels = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { val windowMetrics: WindowMetrics = this.windowManager.currentWindowMetrics windowMetrics.bounds.width() } else { displayMetrics.widthPixels } val density = displayMetrics.density return (adWidthPixels / density).toInt() }جاوا
public int getAdWidth() { DisplayMetrics displayMetrics = getResources().getDisplayMetrics(); int adWidthPixels = displayMetrics.widthPixels; if (VERSION.SDK_INT >= VERSION_CODES.R) { WindowMetrics windowMetrics = this.getWindowManager().getCurrentWindowMetrics(); adWidthPixels = windowMetrics.getBounds().width(); } float density = displayMetrics.density; return (int) (adWidthPixels / density); }برای دریافت کردن یک شیء اندازه آگهی تطبیقی درونخطی، از روش ایستا در کلاس اندازه آگهی استفاده کنید:
Kotlin
val adView = AdView(this@MainActivity) adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, adWidth))جاوا
final AdView adView = new AdView(MainActivity.this); adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, getAdWidth()));
تنظیم چیدمان برنمای تطبیقی درونخطی
برای پیشبار کردن آگهی برنمای تطبیقی بهخط برای چیدمانی خاص، از روشهای زیر استفاده کنید:
AdSize.getPortraitInlineAdaptiveBannerAdSize(Context context, int width)AdSize.getLandscapeInlineAdaptiveBannerAdSize(Context context, int width)
اگر برنامهتان از نماهای عمودی و افقی پشتیبانی میکند و میخواهید آگهی برنمای تطبیقی را در چیدمان فعلی پیشبارگیری کنید، از روش
AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width)
استفاده کنید.
این روش آگهی را در چیدمان فعلی بار میکند.
محدود کردن ارتفاع برنمای تطبیقی درونخط
بهطور پیشفرض، بلندی بیشینه برابربا بلندی دستگاه است برای برنمای تطبیقی درونخطی که بدون مقدار maxHeight ساخته شده است. برای محدود کردن ارتفاع برنمای
انطباقی درونخط، از روش
AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight)
استفاده کنید.