2016-01-20 159 views
2

我一直在尝试从YouTube上学习AppCoda教程,到目前为止我已成功连接到其JSON数据库,并从视频下载了信息我需要。然而,当我将其提供给YouTube播放器库,它给了我一个错误:使用youtube-ios-player-helper播放视频

Error Domain=NSCocoaErrorDomain Code=258 "The file name is invalid."

我核对过AppCoda例子,似乎我的应用程序的工作非常相似。我甚至在调用函数之前打印videoID以确保它是正确的。

func getVideos(pID: String, completion: (result:String)->()) { 

     Alamofire.request(.GET, videosURL).validate().responseJSON { response in 
      switch response.result { 
      case .Success: 
       if let value = response.result.value { 
        let json = JSON(value) 
        var videoID: [String] = [] 
        for var i=0; i<json["items"].count; i++ { 
         let newID = json["items"][i]["snippet"]["resourceId"]["videoId"].stringValue 
         videoID.append(newID) 
         defaults.setObject(videoID, forKey: "\(pID)videoID") 
        } 
        completion(result: "done") 
       } 
      case .Failure(let error): 
       print(error) 
       completion(result: "done") 
      } 
     } 
    } 

     print(videoID) //Returns: 7zAxweqsSfo 
     playerView.loadWithVideoId(videoID) 
} 

回答

5

最新版本的YouTube iOS帮助程序库不包含玩家需要的YTPlayerView-iframe-player.html文件。相关讨论见this GitHub issue

解决的办法是手动添加YTPlayerView-iframe-player.html到您的项目,或点的CocoaPods在主分支:

pod 'youtube-ios-player-helper', :git=>'https://github.com/youtube/youtube-ios-player-helper', :commit=>'head' 
+0

完美的作品!谢谢你的帮助! –