使用 youtube-ios-player-helper 播放视频
Playing video with youtube-ios-player-helper
我一直在尝试让我的应用程序从 YouTube 流式传输视频,从 AppCoda 教程中学习,到目前为止,我已经成功连接到它的 JSON 数据库,并从我需要的视频中下载了信息。但是,当我将其提供给 YouTube 播放器库时,出现错误:
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)
}
最新版本的 YouTube iOS 帮助程序库不包含播放器所需的 YTPlayerView-iframe-player.html
文件。有关相关讨论,请参阅 this GitHub issue。
解决方法是手动添加YTPlayerView-iframe-player.html
到你的项目,或者将Cocoapods指向master分支:
pod 'youtube-ios-player-helper', :git=>'https://github.com/youtube/youtube-ios-player-helper', :commit=>'head'
我一直在尝试让我的应用程序从 YouTube 流式传输视频,从 AppCoda 教程中学习,到目前为止,我已经成功连接到它的 JSON 数据库,并从我需要的视频中下载了信息。但是,当我将其提供给 YouTube 播放器库时,出现错误:
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)
}
最新版本的 YouTube iOS 帮助程序库不包含播放器所需的 YTPlayerView-iframe-player.html
文件。有关相关讨论,请参阅 this GitHub issue。
解决方法是手动添加YTPlayerView-iframe-player.html
到你的项目,或者将Cocoapods指向master分支:
pod 'youtube-ios-player-helper', :git=>'https://github.com/youtube/youtube-ios-player-helper', :commit=>'head'