本指南适用于有兴趣将随播广告添加到 Android IMA 实现。
前提条件
- 与 IMA SDK 集成的 Android 应用。如果需要,请参阅BasicExample 还没有集成了 SDK 的应用。
- 配置为返回随播广告的广告代码。
- 如果您需要样品,请参阅我们的常见问题解答。
实用入门信息
如果您仍需在应用中实施 IMA SDK,请参阅获取 入门指南。
向应用添加随播广告
创建一个 ViewGroup 来展示您的随播
在请求随播广告之前,您需要在
布局。在您的布局 XML 中,添加一个 ViewGroup
元素;这个
示例使用 LinearLayout
。在稍后的步骤中,您将传递一个
对 AdDisplayContainer
的引用。
如果您
集成到 BasicExample 应用中,将以下代码添加到
activity_my.xml
(位于com.google.android.exoplayer2.ui.PlayerView
下方)。
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
下一步是构建一个 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);
这就是全部内容!您的应用程序现在正在显示 Companion 广告。
展示自适应随播广告
IMA 现在支持自适应随播广告。这些随播广告可调整大小以与广告的尺寸相匹配
。它们会填满父视图的 100% 宽度,然后调整高度以适应随播广告的尺寸。
内容。而是使用 Ad Manager 中的 Fluid
随播广告尺寸进行设置。请参阅
设置此值的位置。
![显示 Ad Manager 的随播广告设置的图片。突出显示随播广告素材尺寸选项。](https://developers.google.cn/static/interactive-media-ads/images/ad_manager_fluid_companion.png?authuser=9&hl=hu)
更新 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
,并且内容视频在上方播放,随播广告在下方。