如何在没有 UIWebView 的情况下播放 youtube 视频或在 youtube 视频开始使用 webview 播放时检测视频播放器?

Posted

技术标签:

【中文标题】如何在没有 UIWebView 的情况下播放 youtube 视频或在 youtube 视频开始使用 webview 播放时检测视频播放器?【英文标题】:How to play youtube video without UIWebView or detect video player when youtube video start playing using webview? 【发布时间】:2012-11-22 01:02:48 【问题描述】:

我需要在我的 ios 应用程序中播放 youtube 视频,并且在播放视频时我需要在视频上添加一个叠加层。

1.现在如何在原生播放器中运行 youtube 视频?

2.如果我在 UIWebview 中播放视频,那么我如何检测到该视频是 播放以及如何在视频上添加叠加层?

【问题讨论】:

【参考方案1】:

MPMoviePlayerViewController 无法直接播放 youtube 视频 url。您需要在加载 MPMoviePlayerViewController 之前提取 url。

你可以在我的 github repo 中看到一个工作演示:

试试这个:: https://github.com/DpzAtMicRO/IOSYoutubePlayer

LBYoutubeExtractor 使用 JSON 提取 youtube 网址。 在您的应用程序中使用它之前,请务必阅读 README.md。

问候

【讨论】:

【参考方案2】:

MPMoviePlayerViewController 是一个不错的选择,但最后一次提交是几年前的事了。我找到了另一种名为“XCDYouTubeKit”的解决方案,它支持 iPhone/iPad 和 iOS7 以上的全屏 YouTube 视频。

您可以在 here 访问 github 页面,并在 here 访问完整文档的教程

这是官方开发者在他的页面中所说的:

在应用内播放 YouTube 视频的唯一官方方法是使用网络视图和 iframe 播放器 API。不幸的是,这很慢而且很丑,所以我写了这个播放器来给用户更好的观看体验。

【讨论】:

以上是关于如何在没有 UIWebView 的情况下播放 youtube 视频或在 youtube 视频开始使用 webview 播放时检测视频播放器?的主要内容,如果未能解决你的问题,请参考以下文章

在没有 UIWebView 或 MPMoviePlayer 的情况下播放 .mov 文件

如何在 UIWebView 中同时播放两个视频

在 swift 4 上单击 UIWebview 上的播放视频时出错

如何在用户不触摸 UIWebView 本身的情况下启动 YouTube 视频?

如何在不加载空页面的情况下清理 UIWebView 的内容?

如何从 UIWebView 嵌入式 YouTube 视频播放接收 NSNotifications