我在使用iAd的预滚动视频广告时遇到了问题。
- (void)viewDidLoad {
[super viewDidLoad];
self.canDisplayBannerAds = YES;
NSURL *url = [NSURL URLWithString:@"http://www.ebookfrenzy.com/ios_book/movie/movie.mov"];
player = [[AVPlayerViewController alloc] init];
player.showsPlaybackControls = YES;
AVPlayer *playerP = [[AVPlayer alloc] initWithURL:url];
player.player = playerP;
player.delegate = self;
}
- (IBAction)buttonClick:(id)sender {
[self presentViewController:player animated:YES completion:^{
[player playPrerollAdWithCompletionHandler:^(NSError *error) {
if (error != nil) {
NSLog(@"Error Message: %@", error);
}
}];
NSLog(@"Completion");
}];
}
运行时出现以下错误:
错误域= ADErrorDomain代码= 0“(null)”
不显示iAd前贴片广告。我遵循了这个文档: Monetizing your iOS apps with iAd
我还在Arbitrary Loads
info.plist
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
答案 0 :(得分:1)
您需要在preparePrerollAds
中致电viewDidLoad
下载广告,然后再尝试展示广告。
[AVPlayerViewController preparePrerollAds];
使用MPMoviePlayerController
here检查我的示例。这是相同的方法。
此外,如果您正在开发设备上进行测试,请转到设置&gt;开发人员&gt;填充率&gt;并确保它设置为100%。