Ios 在共享会话中调用MPMoviePlayerController时出现黑屏

Ios 在共享会话中调用MPMoviePlayerController时出现黑屏,ios,swift,mpmovieplayercontroller,Ios,Swift,Mpmovieplayercontroller,这里有一个playVideo()方法: func playVideo() { let url = NSURL(string: "http://mtc.cdn.vine.co/r/videos_r2/20660994A41184015287536758784_SW_WEBM_14252654515363566800065.mp4?versionId=X5uVE9shOvYpw7z7.VnePPyihEfx_uWj") //let url = NSURL(string: video

这里有一个playVideo()方法:

func playVideo() {
    let url = NSURL(string: "http://mtc.cdn.vine.co/r/videos_r2/20660994A41184015287536758784_SW_WEBM_14252654515363566800065.mp4?versionId=X5uVE9shOvYpw7z7.VnePPyihEfx_uWj")

    //let url = NSURL(string: videoUrls[videoNumber])
    //println(videoUrls[videoNumber])
    moviePlayer = MPMoviePlayerController(contentURL: url)
    if let player = moviePlayer {
        player.view.frame = CGRect(x: 0, y: 0, width: 300, height: 300)
        player.view.center = self.view.center
        player.prepareToPlay()
        player.scalingMode = .AspectFill
        player.controlStyle = .None
        self.view.addSubview(player.view)

        player.play()
    }
}
当我直接从viewDidLoad调用它时,它可以正常工作。 但当我试图在共享会话中这样调用它时:

     var task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: { data,response,error  -> Void in

        if(error == nil)
        {
            var err :NSError?
            var jsonResult : NSDictionary = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as NSDictionary!
            var records: NSArray = (jsonResult["data"]?["records"]) as NSArray
            for(var i=0;i<records.count;i++)
            {
                var strVideo = (records[i]["videoLowURL"] as String);
                videoUrls.append(strVideo)
            }
        }
        else
        {
            println("Error")
        }
    })
    task.resume()
var task=NSURLSession.sharedSession().dataTaskWithURL(url!,completionHandler:{data,response,error->Void in
如果(错误==nil)
{
变量错误:n错误?
var jsonResult:NSDictionary=NSJSONSerialization.JSONObjectWithData(数据,选项:NSJSONReadingOptions.MutableContainers,错误:&err)作为NSDictionary!
var记录:NSArray=(jsonResult[“数据”]?[“记录”])作为NSArray

对于(var i=0;i,这是我的想法,但可能不会在主线程上调用完成处理程序。所有UI工作都必须在主线程上完成

使用以下命令分派到主队列:

dispatch_async(dispatch_get_main_queue()) {
    self.playVideo()
}