بنرهای تطبیقی به شما امکان میدهند عرض یک تبلیغ را برای تعیین اندازه بهینه تبلیغ مشخص کنید. بنرهای تطبیقی همچنین با بهینهسازی اندازه تبلیغ برای هر دستگاه، عملکرد را به حداکثر میرسانند. این رویکرد منجر به فرصتهایی برای بهبود عملکرد میشود.
در مقایسه با بنرهای تطبیقی متصل، بنرهای تطبیقی درون خطی بزرگتر و بلندتر هستند و به جای ارتفاع ثابت از ارتفاع متغیر استفاده میکنند. بنرهای تطبیقی درون خطی دارای ارتفاع متغیر هستند و ممکن است کل صفحه یا حداکثر ارتفاعی را که شما تعیین میکنید، در بر بگیرند.
شما بنرهای تطبیقی درون خطی را در محتوای پیمایشی قرار میدهید، برای مثال:

قبل از اینکه شروع کنی
قبل از ادامه، مطمئن شوید که راهنمای شروع به کار، تبلیغات بنری، را تکمیل کردهاید.
بنرهای تطبیقی را پیاده سازی کنید
برخلاف بنرهای تطبیقی لنگری، بنرهای تطبیقی درونخطی با استفاده از اندازه بنر تطبیقی درونخطی بارگذاری میشوند. برای ایجاد اندازه تبلیغ تطبیقی درونخطی، موارد زیر را تکمیل کنید:
عرض دستگاه مورد استفاده را دریافت کنید، یا اگر نمیخواهید از کل عرض صفحه نمایش استفاده کنید، عرض دلخواه خود را تنظیم کنید.
کاتلین
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); }برای دریافت یک شیء اندازه تبلیغ تطبیقی درونخطی برای جهتگیری انتخابشده، از یک متد استاتیک در کلاس اندازه تبلیغ استفاده کنید:
کاتلین
val adView = AdView(this@MainActivity) adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, adWidth))جاوا
final AdView adView = new AdView(MainActivity.this); adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, getAdWidth()));
هنگام پیادهسازی بنرهای تطبیقی در برنامه خود، به این نکات توجه کنید:
- اندازههای بنرهای تطبیقی درونخطی زمانی بهترین عملکرد را دارند که از تمام عرض موجود استفاده کنند. در بیشتر موارد، این اندازه، تمام عرض صفحه نمایش دستگاه مورد استفاده یا تمام عرض محتوای والد بنر است. شما باید عرض نمای قرار دادن تبلیغ، عرض دستگاه، عرض محتوای والد و نواحی امن قابل اجرا را بدانید.
- ممکن است لازم باشد برای کار با اندازههای تطبیقی، آیتمهای خط را بهروزرسانی یا ایجاد کنید. اطلاعات بیشتر .
اندازه بنر تطبیقی درون خطی Orient
برای پیش بارگذاری یک بنر تبلیغاتی تطبیقی درونخطی برای جهتگیری خاص، از روشهای زیر استفاده کنید:
AdSize.getPortraitInlineAdaptiveBannerAdSize(Context context, int width)AdSize.getLandscapeInlineAdaptiveBannerAdSize(Context context, int width)
اگر برنامه شما از هر دو نمای عمودی و افقی پشتیبانی میکند، و میخواهید یک بنر تبلیغاتی تطبیقی را در جهت فعلی از قبل بارگذاری کنید، از AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width) استفاده کنید. این متد یک تبلیغ را در جهت فعلی بارگذاری میکند.
محدود کردن ارتفاع بنر تطبیقی درون خطی
به طور پیشفرض، بنرهای تطبیقی درونخطی که بدون مقدار maxHeight نمونهسازی میشوند، دارای maxHeight برابر با ارتفاع دستگاه هستند. برای محدود کردن ارتفاع بنر تطبیقی درونخطی، از متد AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight) استفاده کنید.
منابع اضافی
مثالها در گیتهاب
برای مشاهده بنرهای تطبیقی درونخطی در عمل، برنامه نمونه را دانلود کنید.