برای بنرهای اسکرولی از تطبیقی ​​درون خطی استفاده کنید، برای بنرهای اسکرولی از تطبیقی ​​درون خطی استفاده کنید

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

این راهنما، ایجاد بنرهای تطبیقی ​​درون‌خطی و تنظیم اندازه بنر را پوشش می‌دهد.

تصویر زیر بنرهای تطبیقی ​​درون‌خطی را در محتوای پیمایشی نشان می‌دهد:

نموداری که تفاوت‌های بنرهای تطبیقی ​​و تطبیقی ​​درون‌خطی را نشان می‌دهد

قبل از اینکه شروع کنی

قبل از ادامه، مطمئن شوید که تبلیغات بنری را تنظیم کرده‌اید .

برای مشاهده یک نمونه کامل از بنر تطبیقی ​​درون‌خطی، برنامه نمونه زیر را دانلود کنید:

بنرهای تطبیقی ​​درون خطی را پیاده‌سازی کنید

برای پیاده‌سازی بنرهای تطبیقی ​​درون‌خطی، اندازه تبلیغ را تنظیم می‌کنید، یک درخواست تبلیغ ایجاد می‌کنید و تبلیغ را بارگذاری می‌کنید.

برای تعیین اندازه یک بنر تطبیقی ​​درون خطی، عرض تبلیغ را تعیین کنید. رویکردهای رایج شامل موارد زیر است:

  • استفاده از عرض تمام صفحه.
  • با استفاده از عرض طرح والد حاوی تبلیغ.
  • تنظیم عرض برای در نظر گرفتن مناطق امن دستگاه.

هنگام ایجاد شیء اندازه تبلیغ، از این عرض محاسبه‌شده استفاده کنید.

مراحل زیر را انجام دهید:

  1. عرض دستگاه خود را دریافت کنید، یا عرضی را تنظیم کنید:

    کاتلین

    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);
    }
    
  2. برای دریافت یک شیء با اندازه تبلیغ تطبیقی ​​درون‌خطی، از یک متد استاتیک در کلاس اندازه تبلیغ استفاده کنید:

    کاتلین

    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.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width) استفاده کنید. این متد یک تبلیغ را در طرح‌بندی فعلی بارگذاری می‌کند.

محدود کردن ارتفاع بنر تطبیقی ​​درون خطی

به طور پیش‌فرض، بنرهای تطبیقی ​​درون‌خطی که بدون مقدار maxHeight ایجاد می‌شوند، حداکثر ارتفاعی برابر با ارتفاع دستگاه دارند. برای محدود کردن ارتفاع بنر تطبیقی ​​درون‌خطی، از متد AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight) استفاده کنید.