本指南適用於有意在 Android IMA 導入廣告時加入隨播廣告的發布商。
必要條件
- 已整合 IMA SDK 的 Android 應用程式。如果您尚未擁有已整合 SDK 的應用程式,請參閱 BasicExample。
- 設定為傳回隨播廣告的廣告代碼。
- 如需範例,請參閱常見問題。
實用的入門指南
如果您仍需要在應用程式中導入 IMA SDK,請參閱入門指南。
在應用程式中加入隨播廣告
建立 ViewGroup 來顯示隨播廣告
在要求伴隨元件之前,您必須在版面配置中建立空間。在版面配置 XML 中加入 ViewGroup
元素;這個範例使用 LinearLayout
。在後續步驟中,您會將此元素的參照傳遞至 AdDisplayContainer
。如果您要整合至 BasicExample 應用程式,請將這段程式碼新增至 videoPlayerContainer
下方的
activity_my.xml
。
activity_my.xml
<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
物件,然後將其新增至 ArrayList<CompanionAdSlot>
。AdDisplayContainer
會採用隨播廣告版位清單,讓您一次顯示多個隨播廣告。您必須建立 ImaSdkFactory
的例項,才能建立 CompanionAdSlot
。
ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance(); ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot); CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(); companionAdSlot.setContainer(companionViewGroup); companionAdSlot.setSize(300, 250); ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>(); companionAdSlots.add(companionAdSlot);
針對您想在應用程式中顯示的每個隨播廣告大小,建立隨播廣告版位。IMA SDK 會在隨播廣告版位中填入 VAST 回應中任何尺寸與檢視畫面高度和寬度相符的隨播廣告。IMA SDK 也支援使用自動調整大小的隨播廣告。建立 companionAdSlots
後,您需要將其新增至 AdsLoader
。下列範例說明如何執行這項操作,具體取決於您是否使用IMA Android BasicExample (使用 Exoplayer-IMA 擴充功能),或是其他不使用擴充功能的 IMA 實作。
BasicExample
adsLoader = new ImaAdsLoader.Builder(this).setCompanionAdSlots(companionAdSlots).build();
其他實作資訊
adsLoader.getAdDisplayContainer().setCompanionSlots(companionAdSlots);
這就是所有訣竅了!您的應用程式現在會顯示隨附廣告。
顯示流暢的隨播廣告
IMA 現在支援自動調整隨播廣告。這些隨附廣告可調整大小,以符合廣告版位大小。它們會填滿父項檢視畫面的 100% 寬度,然後調整高度,以便配合伴隨內容。您可以使用 Ad Manager 中的 Fluid
隨播廣告大小進行設定。請參閱下圖,瞭解設定此值的位置。
更新 Android 應用程式,以便與流暢隨附裝置搭配運作
您可以更新 CompanionAdSlot.setSize()
方法,讓該方法同時使用 CompanionAdSlot.FLUID_SIZE
做為兩個參數,藉此宣告流動式隨附元件版位。
ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance(); ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot); CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(); companionAdSlot.setContainer(companionViewGroup); companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE); ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>(); companionAdSlots.add(companionAdSlot);
常見問題
- 我按照指南操作,但沒有看到隨播廣告。該怎麼辦?
- 首先,請確認代碼確實會傳回同伴。如要執行這項操作,請在網路瀏覽器中開啟代碼,然後尋找 CompanionAds 代碼。如果您發現這種情況,請檢查傳回的伴隨物大小是否與您傳遞至
CompanionAdSlot
物件的尺寸相同。 - 按照本指南的說明操作,我的隨播廣告版位會是什麼樣子?
-
下方圖片是使用
BasicExample
建立,上方播放內容影片,下方則顯示隨播廣告。