播放电影时,我想使用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;
引用文档(增加强调):
AVInterstitialTimeRange
对象将视听演示中的时间范围识别为间隙内容,如广告或法律通知。通过将间隙时间范围与您在AVPlayerViewController
类中呈现的AVPlayerItem
对象相关联,您可以自定义或限制间隙内容的呈现。例如,您可以允许用户轻松跳过广告或禁止跳过法律通知。
翻译:您不使用此API来呈现广告。您将广告作为与您的内容相同的媒体流的一部分来呈现,或者可能通过一个AVPlayerItem
播放的多个来源的组合来呈现。
如果您已经呈现了间隙内容,您希望在UI中清楚地标记与此类内容对应的时间范围(以便于跳过或禁止跳过),则可以使用AVInterstitialTimeRange
进行标记。