2016-01-20 206 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

完美的作品!謝謝你的幫助! –