錨定自動調整橫幅廣告

自動調整橫幅廣告是新一代的回應式廣告,可針對每部裝置調整廣告大小,藉此獲得最佳成效。原本智慧型橫幅廣告僅支援固定高度,改良後的自動調整橫幅廣告則可讓您指定廣告寬度,從而決定理想的廣告大小。

為了選擇最適合的廣告大小,自動調整式橫幅廣告採用固定的顯示比例,而非固定高度。進而使不同裝置和螢幕大小上顯示的橫幅廣告版面比例更加一致,有助提升廣告成效。

使用自動調整橫幅廣告時,請注意,這類廣告一律會針對特定裝置和寬度傳回固定大小,在特定裝置上測試版面配置後,您就能確定廣告大小不會變更。不過,橫幅廣告素材的大小可能會因裝置而異。因此,建議您確保版面配置可容納廣告高度的差異。在極少數情況下,系統可能無法填滿完整自適應大小,而是將標準尺寸的廣告素材置中顯示在這個廣告空間中。

自動調整橫幅廣告的使用時機

在設計上,自動調整橫幅廣告旨在直接取代業界標準的 320x50 橫幅廣告大小,以及智慧型橫幅廣告格式。

這些橫幅大小通常會做為錨定橫幅使用,且通常會固定在畫面頂端或底部。對於這類錨定橫幅,使用自動調整橫幅時的長寬比會與標準 320x50 廣告類似,如以下螢幕截圖所示:


320x50 橫幅廣告

智慧型橫幅廣告

自動調整橫幅廣告

自動調整橫幅廣告可更充分利用可用螢幕大小。此外,相較於智慧型橫幅廣告,自動調整橫幅廣告是更好的選擇,原因如下:

  • 這項功能會採用指定寬度,而非全螢幕寬度,因此您可將安全區域納入考量。

  • 系統會為特定裝置選擇最佳高度,而不是在不同大小的裝置上使用固定高度,藉此減輕裝置畫面尺寸多樣化造成的影響。

實作注意事項

在應用程式中導入自適應橫幅時,請注意下列事項:

  • 您必須知道廣告要放置的檢視區塊寬度,且應將裝置寬度和任何適用的安全區域納入考量

  • 如果放送的廣告尺寸較小,無法填滿廣告版位,請務必將廣告檢視畫面背景設為不透明,以免違反 AdMob 政策。

  • 請確認您使用的是最新版 Google Mobile Ads C++ SDK。如要使用中介服務,請使用各中介服務轉接程式的最新版本。

  • 自動調整橫幅廣告的設計宗旨,是盡可能使用可用寬度,以達到最佳成效。在大多數情況下,這會是所用裝置螢幕的完整寬度。請務必將適用的安全區域納入考量。

  • Google Mobile Ads C++ SDK 會在 firebase::gma::AdSize 中,針對指定寬度傳回最佳化的廣告高度。

  • 取得自動調整橫幅廣告尺寸的方法有三種:一種適用於橫向模式,一種適用於直向模式,另一種則適用於執行時的目前方向。

  • 針對特定裝置和寬度,系統一律會傳回固定的大小,因此在特定裝置上測試版面配置後,您就能確定廣告大小不會改變。

  • 錨定式橫幅的高度不會超過裝置高度的 15%,也不會小於 50 點。

快速入門

導入簡易自動調整錨定橫幅廣告的步驟如下:

  1. 取得自動調整橫幅廣告尺寸。您取得的尺寸會用於請求自動調整橫幅廣告。如要取得自動調整廣告尺寸,請務必完成下列操作:

    1. 取得所用裝置的寬度,或者,如果您不想使用畫面的完整寬度,請自行設定需要的寬度。

    2. 針對 AdSize 類別使用適當的靜態方法 (例如 GetCurrentOrientationAnchoredAdaptiveBannerAdSize(uint32_t width)),取得所選螢幕方向的自動調整 AdSize 物件。

    3. AdView 上叫用 Initialize()AdView,並使用您建立的自動調整式 AdSize

      完整範例如下。

  2. 建立 AdRequest 物件,然後在您準備的廣告檢視畫面上使用 loadAd() 方法載入橫幅廣告,做法與處理一般橫幅廣告請求相同。

程式碼範例

以下範例會載入自動調整式橫幅的 AdView

// Determine view width in pixels based on your app's current width on the
// device's screen. This process will vary depending on which windowing toolkit
// you're using.

firebase::gma::AdSize adaptive_ad_size =
      AdSize::GetCurrentOrientationAnchoredAdaptiveBannerAdSize(view_width);

// my_ad_parent is a reference to an iOS UIView or an Android Activity.
// This is the parent UIView or Activity of the banner view.
firebase::gma::AdParent ad_parent =
  static_cast<firebase::gma::AdParent>(my_ad_parent);
firebase::Future<void> result =
  ad_view->Initialize(ad_parent, kBannerAdUnit, adaptive_ad_size);

在這裡,函式 GetCurrentOrientationAnchoredAdaptiveBannerAdSize(uint32_t width) 用於取得目前介面方向的錨定位置中,橫幅的大小。如要在特定螢幕方向預先載入錨定橫幅,請使用 GetPortraitAnchoredAdaptiveBannerAdSize(uint32_t width)GetLandscapeAnchoredAdaptiveBannerAdSize(uint32_t width) 中的相關函式。