配置广告插播播放
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
本指南面向希望手动控制广告插播时间的用户。在默认实现中,SDK 会在预定时间自动播放中贴片广告。部分开发者可能希望阻止 SDK 自动播放这些广告插播时间。通过实现手动广告时段播放,SDK 会在中贴片广告加载完毕后触发 AD_BREAK_READY
事件,并等待您开始播放广告时段。
前提条件
实用的入门信息
如果您仍需要在应用中实现 IMA SDK,请查看我们的入门指南。
配置手动广告插播需要执行以下三个步骤:
- 告知 SDK 您要控制广告插播播放。
- 监听 AD_BREAK_READY 事件。
- 准备就绪后,告知 SDK 播放广告。
以下代码段展示了在
高级示例中实现手动广告插播所需的修改:
- (void)setUpAdsLoader {
...
IMASettings settings = [[IMASettings alloc] init];
// Tell the SDK that you want to control ad break playback.
settings.autoPlayAdBreaks = NO;
self.adsLoader = [[IMAAdsLoader alloc] initWithSettings:settings];
...
}
- (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event {
...
switch (event.type) {
// Listen for the AD_BREAK_READY event
case kIMAAdEvent_AD_BREAK_READY:
// Tell the SDK to play ads when you're ready. To skip this ad break,
// simply return from this handler without calling [adsManager start].
[adsManager start];
break;
...
}
}
常见问题解答
- IMA SDK 实现是否需要此参数?
- 当然不是!此选项仅适用于不希望 IMA SDK 在根据广告规则或 VMAP 响应安排播放中贴片广告时自动播放这些广告的发布商。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-31。
[null,null,["最后更新时间 (UTC):2025-08-31。"],[[["\u003cp\u003eThis guide explains how to manually control ad break playback timing within the IMA SDK for iOS apps, preventing automatic mid-roll playback.\u003c/p\u003e\n"],["\u003cp\u003eBy implementing manual ad break playback, developers can trigger mid-roll ads using the \u003ccode\u003eAD_BREAK_READY\u003c/code\u003e event and the \u003ccode\u003estart\u003c/code\u003e method.\u003c/p\u003e\n"],["\u003cp\u003eThis feature is optional and intended for publishers seeking greater control over ad playback timing, requiring code modifications to the IMA SDK setup and event handling.\u003c/p\u003e\n"],["\u003cp\u003eManual ad break playback involves three steps: disabling automatic ad breaks, listening for the \u003ccode\u003eAD_BREAK_READY\u003c/code\u003e event, and initiating ad playback when desired.\u003c/p\u003e\n"]]],[],null,["Select platform: [Android](/interactive-media-ads/docs/sdks/android/client-side/manual_ad_playback \"View this page for the Android platform docs.\") [iOS](/interactive-media-ads/docs/sdks/ios/client-side/manual_ad_playback \"View this page for the iOS platform docs.\")\n\nThis guide is intended for users who want manual control over ad break playback timing. In a default implementation, the SDK automatically plays mid-rolls at their scheduled time. Some developers may want to prevent the SDK from playing these ad breaks automatically. By implementing manual ad break playback, the SDK fires an `AD_BREAK_READY` event when a mid-roll has been loaded, and wait on you to start the break's playback.\n\nPrerequisites\n\n\u003cbr /\u003e\n\n- iOS application with the IMA SDK implemented.\n\n\u003cbr /\u003e\n\nHelpful primers\n\nIf you still need to implement the IMA SDK in your app, check out our [Get Started guide](/interactive-media-ads/docs/sdks/ios/client-side).\n\nConfiguring Manual Ad Break Playback Configuring manual ad break playback takes three steps: \n\n1. Tell the SDK you want to control ad break playback.\n2. Listen for the AD_BREAK_READY event.\n3. Tell the SDK to play ads when you're ready.\n\nThe snippet below shows the modifications required on the [Advanced Example](//github.com/googleads/googleads-ima-ios/tree/master/Objective-C/AdvancedExample) to implement manual ad break playback: \n\n```objective-c\n- (void)setUpAdsLoader {\n ...\n IMASettings settings = [[IMASettings alloc] init];\n // Tell the SDK that you want to control ad break playback.\n settings.autoPlayAdBreaks = NO;\n self.adsLoader = [[IMAAdsLoader alloc] initWithSettings:settings];\n ...\n}\n\n- (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event {\n ...\n switch (event.type) {\n // Listen for the AD_BREAK_READY event\n case kIMAAdEvent_AD_BREAK_READY:\n // Tell the SDK to play ads when you're ready. To skip this ad break,\n // simply return from this handler without calling [adsManager start].\n [adsManager start];\n break;\n ...\n }\n}\n```\n\nFAQ\n\nIs this required for an IMA SDK implementation?\n: Absolutely not! This is only offered for publishers who do not want the IMA SDK to automatically play mid-roll ads when they are scheduled by your ad rules or VMAP response."]]