YouTube встроенное видео: функция автозапуска не работает в iphone
У меня есть ссылка на видео YouTube на странице HTML5, которую я хочу автоматически воспроизвести.
Следующий код работает в браузерах, но в iphone; это не работает и нуждается в дополнительном щелчке.
<iframe type="text/html" width="125" height="100" src="http://www.youtube.com/embed/d_g0251EfB8?autoplay=1" frameborder="0"></iframe>
что делать
4 ответа
Это не может быть сделано. По разным причинам (включая, но не ограничиваясь использованием данных) Apple не разрешает автоматическое воспроизведение видео.
Смотрите принятый ответ на этот вопрос.
ОБНОВИТЬ:
iOS 10+ теперь позволяет автоматически воспроизводить элементы HTML5
ОБРАЗЕЦ:
<video autoplay muted>
<source src="movie.mp4" type="video/mp4">
Sadly, your browser does not support the video tag X_x
</video>
ИНФОРМАЦИОННЫЙ ИСТОЧНИК: https://webkit.org/blog/6784/new-video-policies-for-ios/
Я пробовал следующие видео и YouTube успешно автоматически воспроизводится в полноэкранном режиме после завершения загрузки веб-просмотра:
[self.webView setAllowsInlineMediaPlayback:YES];
[self.webView setMediaPlaybackRequiresUserAction:NO];
[self.view addSubview:self.webView];
NSString* embedHTML = [NSString stringWithFormat:@"\
<html>\
<body style='margin:0px;padding:0px;'>\
<script type='text/javascript' src='http://www.youtube.com/iframe_api'></script>\
<script type='text/javascript'>\
function onYouTubeIframeAPIReady()\
{\
ytplayer=new YT.Player('playerId',{events:{onReady:onPlayerReady}})\
}\
function onPlayerReady(a)\
{ \
a.target.playVideo(); \
}\
</script>\
<iframe id='playerId' type='text/html' width='100%%' height='%f' src='http://www.youtube.com/embed/%@?enablejsapi=1&rel=0&playsinline=0&autoplay=1' frameborder='0'allowfullscreen>\
</body>\
</html>",self.webView.frame.size.height,@"Dw9jFO_coww"];
[self.webView bringSubviewToFront:self.btnBack];
self.webView.backgroundColor = [UIColor clearColor];
self.webView.opaque = NO;
[self.webView loadHTMLString:embedHTML baseURL:[[NSBundle mainBundle] resourceURL]];
Чтобы включить автовоспроизведение видео, вам необходимо включить параметр «mute» в исходный код iframe. Важно отметить, что хотя автовоспроизведение обычно разрешено в таких браузерах, как Firefox и Chrome, видео должно начинаться без звука.
&без звука=1