我想使用youtube视频网址播放youTube视频。
我成功在iOS 5.1.1版中播放视频,但视频无法在iOS 5.0.1及4.0或更低版本中播放。我正在使用webview播放视频。
答案 0 :(得分:2)
对于低于5的IOS,您需要使用iframe:
NSString *youTubeVideoHTML = @"<iframe id=\"yt\" class=\"youtube-player\" type=\"text/html\" width=\"280\" height=\"186\" src=\"http://www.youtube.com/embed/xxxxxx\" frameborder=\"0\">";
and for ios 5 above we can use embed :
NSString *youTubeVideoHTML = @"<html><head>\
<body style=\"margin:0\">\
<embed id=\"yt\" src=\"http://www.youtube.com/watch?v=xxxxxx?autoplay=1\" type=\"application/x-shockwave-flash\" \
width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body></html>";
注意:在IOS 6中,我发现只有在我们将youtube网址传递为http://www.youtube.com/v/xxxxxx?autoplay=1
时才会使用网址希望这会成功。
答案 1 :(得分:1)
从您的评论中看起来您使用了错误的嵌入代码,youtube嵌入现在看起来像
<iframe width="560" height="315" src="http://www.youtube.com/embed/Cw2RzvK13F4" frameborder="0" allowfullscreen></iframe>
如前所述,闪存无法在iPhone上播放,因此需要使用HTML5版本,遗憾的是我不认为100%的YouTube视频已被转换,但大多数都应该有效。
答案 2 :(得分:0)
您需要确保为嵌入视频使用正确的网址格式。他们最近有所改变。
Youtube Embedded Players and Player Parameters - YouTube - Google Developers
看起来像这样:
http://www.youtube.com/embed/VIDEO_ID
答案 3 :(得分:0)
这是我的代码,适用于所有以前版本的iOS 5。只需尝试使用此代码。我相信这会解决你的问题。
// Over here Just replace this url with your one's.
NSString *pdfString = @"http://www.youtube.com/watch?v=qe39vPFabuA";
NSString *htmlString = @"<html><head>\n"
"<meta name = \"viewport\" content = \"initial-scale = 1.0, user-scalable = no, width = 320\"/></head>\n"
"<body style=\"background:FFF;margin-top:0px;margin-left:0px\">\n"
"<div><object width=\"320\" height=\"416\">\n"
"<param name=\"movie\" value=\"%@\"></param>\n"
"<param name=\"wmode\" value=\"transparent\"></param>\n"
"<embed src=\"%@\"\n"
"type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\"320\" height=\"416\"></embed>\n"
"</object></div></body></html>\n";
[webView loadHTMLString:[NSString stringWithFormat:htmlString,[pdfString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]],[pdfString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]] baseURL:nil];
此外,确保仅在“仅设备”中测试代码。在模拟器上测试不会播放视频。