在 iAd 的前滚动视频广告中收到错误,但广告播放

Receiving Error in iAd's Pre-Roll Video Ad however Ad plays

虽然 iAd 前置视频广告播放成功,但我在前置视频广告中收到错误消息。我想知道我的代码是否有错误。

这是错误信息:

iAdPreRollVideoAdTest[ ... : ... ] nil

这是打印错误的代码:

 moviePlayer.playPrerollAdWithCompletionHandler { (error) -> Void in
            NSLog("\(error)")

            self.moviePlayer.view.removeFromSuperview()
            //I want to remove it after the ad plays
        }

我的代码有问题吗?还是这是正常的?

不,您的代码没有任何问题,但是如果 error 的值等于 nil.

,则将 error 打印到控制台是没有意义的

nil 本质上是缺少有效值。因此,nil 被打印到您的控制台的原因是因为 error 不包含任何值。我们只希望在实际打印错误时将 error 打印到控制台。我们完成此操作的方法是检查 error 是否不等于 !=nil,如果不相等,我们将错误打印到控制台。例如:

moviePlayer.playPrerollAdWithCompletionHandler { (error) -> Void in
    if (error) != nil {
        println("\(error)")
    } 
    self.moviePlayer.view.removeFromSuperview()
}