4

我正在开发一个可以播放在线视频的 iPhone 应用程序,我想在加载视频数据时先播放广告。
首先,我请求一个 AdColony 视频广告并开始播放,然后使用MPMoviePlayerController加载视频数据,但是当视频准备播放时,它会打断之前的广告声音,并导致广告停止。

这是我使用的代码:

// Play Ad first
[AdColony playVideoAdForSlot:1 withDelegate:self]; // It also use MPMoviePlayerController to play video

// Load video for playing
moviePlayer = [[MPMoviePlayerController alloc]
               init];
moviePlayer.scalingMode = MPMovieScalingModeAspectFit;
moviePlayer.controlStyle = MPMovieControlStyleNone;
moviePlayer.shouldAutoplay = NO;
moviePlayer.view.frame = CGRectMake(0,44,320,320);
moviePlayer.view.userInteractionEnabled = YES;
[moviePlayer prepareToPlay]; // Interrupt Ad playing

官方文档说“通话prepareToPlay可能会中断电影播放器​​的音频会话”,因此广告被中断。如果我删除prepareToPlay,视频数据将不会被预加载
我试图放在 [AdColony playVideoAdForSlot:1 withDelegate:self];下面[moviePlayer prepareToPlay];

但它不起作用。有谁知道如何解决它?

4