在可捲動內容中使用內嵌自動調整橫幅廣告

「自動調整橫幅廣告」的寬度可自由指定,為各種裝置決定最合適的廣告大小。與錨定自動調整橫幅廣告不同,內嵌自動調整橫幅廣告的版面比前者更大、更高。這類廣告的高度會依情況調整,可能與螢幕等高,或在您指定的高度上限內。

本指南說明如何建立內嵌自動調整橫幅廣告,以及設定橫幅大小。

下圖顯示捲動內容中的內嵌自動調整橫幅廣告:

示意圖:自動調整橫幅廣告和內嵌自動調整橫幅廣告的差異

事前準備

繼續操作前,請先設定橫幅廣告

如要查看完整的內嵌自動調整橫幅廣告範例,請下載下列範例應用程式:

導入內嵌自動調整橫幅廣告

如要導入內嵌自動調整橫幅廣告,請設定廣告大小、建立廣告請求,然後載入廣告。

如要設定內嵌自動調整橫幅廣告的大小,請先決定廣告寬度。常見方法包括:

  • 使用全螢幕寬度。
  • 使用包含廣告的上層布局寬度。
  • 根據裝置安全區域調整寬度。

建立廣告大小物件時,請使用這個計算出的寬度。

操作步驟如下:

  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. 如要取得內嵌自動調整廣告大小物件,請依廣告大小類別使用靜態方法:

    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 值,高度上限會等於裝置高度。如要限制內嵌自動調整橫幅廣告的高度,請使用 AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight) 方法。