新增隨播廣告支援

選取平台: HTML5 Android iOS

本指南適用於有意在 Android IMA 導入中加入隨播廣告的發布商。

必要條件

  • 已整合 IMA SDK 的 Android 應用程式。如果應用程式尚未整合 SDK,請參閱 BasicExample。如需在應用程式中導入 IMA SDK 的協助,請參閱「設定 IMA SDK」。
  • 設定為傳回隨播廣告的廣告代碼。如需範例,請參閱常見問題。

在應用程式中加入隨播廣告

請按照下列步驟,在應用程式中新增隨播廣告版位並顯示隨播廣告。

建立 ViewGroup 來顯示隨播廣告

請求隨播廣告前,您必須在版面配置中為其建立空間。在版面配置 XML 中,新增 ViewGroup 元素;本範例使用 LinearLayout。在後續步驟中,您會將這個元素的參照傳遞至 AdDisplayContainer。

如果您要整合至 BasicExample 應用程式,請將這段程式碼新增至 activity_my.xml 檔案中 videoPlayerContainer 的下方。

<LinearLayout
    android:id="@+id/companionAdSlot"
    android:layout_width="match_parent"
    android:layout_height="250dp"
    android:layout_gravity="center_horizontal"
    android:gravity="center"
    android:orientation="vertical"
    android:textAlignment="center" />

建立 CompanionAdSlot

下一步是建構 CompanionAdSlot 物件,然後將其新增至 ArrayList<CompanionAdSlot> 例項。AdDisplayContainer 介面會接收隨播廣告版位清單,因此您可以一次顯示多則隨播廣告。您需要建立 ImaSdkFactory 類別的執行個體,才能建立 CompanionAdSlot 物件。

public void createCompanionAdSlot(ViewGroup companionViewGroup) {
  ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
  CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(companionViewGroup);
  companionAdSlot.setSize(300, 250);
  ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
  companionAdSlots.add(companionAdSlot);
}

請為要在應用程式中顯示的每個隨播廣告大小,建立隨播廣告版位。IMA SDK 會在隨播廣告版位中,填入 VAST 回應中尺寸與檢視區塊高度和寬度相符的隨播廣告。IMA SDK 也支援使用自動調整大小的隨播廣告。建立 companionAdSlots 後,請將其新增至 AdsLoader。以下範例說明如何根據您是否使用 Exoplayer-IMA 擴充功能,或其他不使用擴充功能的 IMA 實作方式,來執行這項操作。

Exoplayer-IMA 擴充功能

public void setCompanionAdSlotExoPlayer(
    Context context, ArrayList<CompanionAdSlot> companionAdSlots) {
  ImaAdsLoader adsLoader =
      new ImaAdsLoader.Builder(context).setCompanionAdSlots(companionAdSlots).build();
}

其他實作資訊

public void setCompanionAdSlot(
    AdDisplayContainer adDisplayContainer, ArrayList<CompanionAdSlot> companionAdSlots) {
  adDisplayContainer.setCompanionSlots(companionAdSlots);
}

這就是所有訣竅了!應用程式現在會顯示隨播廣告。

顯示自動調整隨播廣告

IMA 支援自動調整隨播廣告。這類隨播廣告可配合廣告版位大小調整尺寸。這類廣告會填滿上層檢視區塊 100% 的寬度,然後調整高度,以符合隨播廣告的內容。您可以在 Ad Manager 中使用 Fluid 隨播廣告大小進行設定。請參閱下圖,瞭解如何設定這個值。

圖片:Ad Manager 的隨播廣告設定。醒目顯示隨播廣告素材大小選項。

更新 Android 應用程式,打造流暢的隨附體驗

如要宣告自動調整隨播廣告版位,請更新 CompanionAdSlot.setSize() 方法,將兩個參數都設為 CompanionAdSlot.FLUID_SIZE。

companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE);

常見問題

我按照指南操作,但沒有看到隨播廣告。該怎麼辦?
首先,請確認代碼確實會傳回隨播廣告。方法是在網路瀏覽器中開啟代碼,然後尋找 <CompanionAds> 標記。如果發生這種情況,請確認傳回的隨播廣告大小與傳入 CompanionAdSlot 物件的大小相同。
按照本指南操作後,隨播廣告版位會是什麼樣子?

下圖是根據 BasicExample 建立,上方播放內容影片,下方顯示隨播廣告。

IMA Android 隨播廣告範例圖片。