Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 使用AVFoundation在自定义播放器中播放youtube视频_Iphone_Ios_Youtube Api_Avfoundation_Mpmovieplayer - Fatal编程技术网

Iphone 使用AVFoundation在自定义播放器中播放youtube视频

Iphone 使用AVFoundation在自定义播放器中播放youtube视频,iphone,ios,youtube-api,avfoundation,mpmovieplayer,Iphone,Ios,Youtube Api,Avfoundation,Mpmovieplayer,AVFoundation允许开发者创建自定义视频播放器,而不是使用苹果自己的全屏MPMoviePlayer 在我的项目中,我使用这种方法实现了与YouTube iOS应用程序类似的功能,即在顶部有一个“画布”视图,在底部有几个控件和文本标签: 正如您所知,YouTube URL“指向”HTML数据,它是用来在UIWebView中使用的。点击这个UIWebView中的缩略图会显示一个全屏播放器,这正是我试图避免的 我想知道YouTube API是否提供了指向实际视频(mp4文件)的URL,以便我

AVFoundation允许开发者创建自定义视频播放器,而不是使用苹果自己的全屏MPMoviePlayer

在我的项目中,我使用这种方法实现了与YouTube iOS应用程序类似的功能,即在顶部有一个“画布”视图,在底部有几个控件和文本标签:

正如您所知,YouTube URL“指向”HTML数据,它是用来在UIWebView中使用的。点击这个UIWebView中的缩略图会显示一个全屏播放器,这正是我试图避免的

我想知道YouTube API是否提供了指向实际视频(mp4文件)的URL,以便我可以在AVFoundation中使用它

我想找到一个合法的方法来做到这一点,所以它应该明确遵守苹果和谷歌的服务条款


谢谢,

附加视频id并包含mp4 url,可能需要一些正则表达式(见此处:)

实现这一点的最简单方法是添加一个覆盖UIView,您可以将其放置在屏幕的任何部分上。并将其置于UIWebView之上,并将其设置为不响应用户交互。由于您可以更改大小和位置并使其透明,因此可以有效地选择您想要和不想要的用户交互。而且你不会以任何方式干扰youTube ToS。

你应该去看看他们在做什么,尽管我不确定这是否符合他们的服务条款谢谢!我去看看。我正在寻找一个合法的方法来实现这一点,希望有一个。一定要去看看,我只听说过TOS——我自己从来没有研究过它你知道这是否违反了Youtube的TOS吗?没有研究过,不确定我不完全确定,但我认为播放该视频总是会导致应用程序触发全屏模式播放器,对吗?查看UIWebView参考,我发现了这个属性:@property(非原子)allowsInlineMediaPlayback这可能会起作用。似乎要让它以这种方式工作,您需要创建一个本地HTML5页面并在UIWebView中显示它。这一功能在iPhone而不是iPad中被禁用的原因可能是小屏幕。在iPad上allowsInlineMediaPlayback设置为YES,在iPod/iPhone上设置为no。我解决了这个问题,根本没有求助于AVFoundation。相反,我最终将YouTube的HTML5播放器嵌入到UIWebView中。通过在YouYube的URL中包含参数,您可以在一定程度上自定义该播放器,然后您可以使用javascript使用自己的UIKit视图与该播放器交互。