在播放电影时,我想使用AVInterstitialTimeRange展示一些广告。我能够创建"点"在播放电影时在进度条上,但我如何实际展示广告?
到目前为止,这是我展示广告的代码。
NSArray *adBreaks = result.adBreaks;
_player.player.currentItem.interstitialTimeRanges = adBreaks;
NSMutableArray *adBreaksCMTime = [[NSMutableArray alloc]init];
for(AdBreak *brk in adBreaks) {
CMTime seekingCM = CMTimeMake([brk adBreakTime], 1);
CMTime durationCM = CMTimeMake([brk adBreakDuration], 1);
AVInterstitialTimeRange *adTimeRange = [[AVInterstitialTimeRange alloc]initWithTimeRange:CMTimeRangeMake(seekingCM, durationCM)];
[adBreaksCMTime addObject:adTimeRange];
}
_player.player.currentItem.interstitialTimeRanges = adBreaksCMTime;
答案 0 :(得分:0)
Quoth the docs(强调补充):
AVInterstitialTimeRange
对象 将视听演示中的时间范围标识为 作为插页式内容,例如广告或法律声明。通过将插页式广告时间范围与您在AVPlayerItem
课程中提供的AVPlayerViewController
对象相关联,您可以自定义或限制插页式广告内容的显示。例如,您可以允许用户轻松跳过广告或禁止跳过法律声明。
翻译:您不能将此API用于展示广告。您可以将广告作为与内容相同的媒体流的一部分展示,也可以通过一个AVPlayerItem
播放的多个来源的组合来展示广告。
如果您已经提交插页式广告内容,则希望在用户界面中清楚地标记与此类内容相对应的时间范围(以便于跳过或禁止跳过),您可以使用AVInterstitialTimeRange
标记它们。