我正在使用 youtube API 来显示视频列表并播放该视频。 v2 一切正常,但现在已弃用,我已将其更新为 v3。
我正在成功获取 youtube 播放列表,但是当我使用 API 中提供的 videoId 播放时它失败并显示如下错误。
它在浏览器 safari 和 mozila 中也能正常播放。
视频网址 VideoLink
**Error**
Error Domain=YouTubeVideoErrorDomain Code=2 "Invalid parameters." UserInfo=0x7f877064c610
{NSURL=https://www.youtube.com/get_video_info?el=detailpage&hl=en&ps=default&video_id=https%3A%2F%2F
www.youtube.com%2Fwatch%3Fv%3DRgKAFK5djSk%26feature%3Dyoutube_gdata, NSLocalizedDescription=Invalid parameters.}
最佳答案
我对您的问题的理解是,您正在努力让视频在您的应用中播放?从你的错误输出来看,无论如何对我来说,你似乎正试图将 URL 传递给像 MPMoviePlayerController
这样的本地东西?
如果是这样,这可以做到,但你接近它的方式是错误的。您需要做的是使用 YouTube 视频 URL 链接提取器库,它将使用您从 YouTube API V3 返回的视频 ID,然后获取 MP4 视频 URL 的列表。然后,您可以使用这些 URL 在本地播放视频。
这是一个很棒的链接提取器库,您可以使用它:https://github.com/runmad/RMYouTubeExtractor
我应该指出,这违反了 YouTube ToS,因此如果您想按照 Google 允许的方式进行操作,则只需将该视频嵌入到一个小的 UIWebView 中即可。 (这看起来和工作都很糟糕)。使用这个库来做到这一点:https://github.com/youtube/youtube-ios-player-helper
关于ios - Youtube API v3,视频播放时参数无效问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30753389/