内嵌自适应横幅广告

请选择平台Android iOS Flutter

自适应横幅广告可让您指定广告宽度,进而确定最佳广告尺寸。自适应横幅广告还可针对每种设备优化广告尺寸,从而最大限度地提升广告效果。这种方法有助于提升广告效果。

与锚定自适应横幅广告相比,内嵌自适应横幅广告更大、更高,并且使用的是可变高度而非固定高度。内嵌自适应横幅广告的高度可变,可以占据整个屏幕,也可以达到您指定的高度上限。

您可以将内嵌自适应横幅广告放置在滚动显示的内容中,示例如下:

图表:显示了自适应横幅广告和内嵌自适应横幅广告之间的区别

准备工作

在继续操作之前,请确保您已完成横幅广告入门指南。

植入自适应横幅广告

与锚定自适应横幅广告不同,内嵌自适应横幅广告使用内嵌自适应横幅广告尺寸进行加载。如需创建内嵌自适应广告尺寸,请完成以下操作:

  1. 获取所用设备的宽度,或者自行设置宽度(如果您不想使用屏幕的全宽)。

    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()
      }
    

    Java

    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. 使用广告尺寸类中的相应静态方法(例如 AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width)),获取与所选屏幕方向对应的自适应内嵌广告尺寸对象。

    Kotlin

    val adView = AdView(this@MainActivity)
    adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, adWidth))

    Java

    final AdView adView = new AdView(MainActivity.this);
    adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, getAdWidth()));

在应用中植入自适应横幅广告时,请注意以下几点:

  • 按照内嵌自适应横幅广告尺寸的设计,占满可用宽度时效果最佳。在大多数情况下,此尺寸指的是所用设备的屏幕全宽,或者横幅广告父级内容的全宽。您必须知道要放置在广告中的视图的宽度、设备宽度、父内容宽度和适用的安全区域。
  • 您可能需要更新或创建新订单项才能采用自适应尺寸。了解详情

确定内嵌自适应横幅广告尺寸的方向

如需预加载特定屏幕方向的内嵌自适应横幅广告,请使用以下方法:

如果您的应用同时支持竖屏和横屏视图,并且您想预加载当前屏幕方向的自适应横幅广告,请使用 AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width)。 此方法会加载当前屏幕方向的广告。

限制内嵌自适应横幅广告的高度

默认情况下,未指定 maxHeight 值的内嵌自适应横幅广告的 maxHeight 等于设备高度。如需限制内嵌自适应横幅广告的高度,请使用 AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight) 方法。

其他资源

GitHub 上的示例

下载示例应用,查看内嵌自适应横幅广告的实际效果。

Java Kotlin