我正在使用youtube API来显示视频列表并播放该视频。在 v2 上一切正常,但随着现在它已被弃用,我已经使用 v3 更新了它。
我已成功获得 youtube 播放列表,但是当我使用 API 中提供的 videoId 播放时,它失败并显示错误,如下所示。
此外,它在浏览器野生动物园和mozila中运行良好。
视频网址视频链接
**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的,所以如果你想按照谷歌允许的方式去做,那么你需要简单地将该视频嵌入到一个小的UIWebView中。(看起来和工作都很糟糕)。使用此库可以做到这一点:https://github.com/youtube/youtube-ios-player-helper