Недавно не воспроизводился клип на YouTube с помощью проигрывателя iframe в UIWebView
В моем приложении для iOS используется проигрыватель iframe youtube в UIWebView для воспроизведения любого клипа со встроенным режимом. Следующий код используется HTML-код.
<html>
<head>
<style type="text/css">body {background-color: transparent;color: white;}</style>
</head>
<body style="margin:0">
<iframe src="http://www.youtube.com/embed/e2w8z6mI47U?playsinline=1&rel=0&showinfo=0" width="320" height="240" frameborder="0" allowfullscreen></iframe>
</body>
</html>
Затем он передается loadHTMLString
метод.
Этот код хорошо работал до недавнего свидания. Но недавно я заметил, что все клипы, которые я использовал, не воспроизводятся нормально. кнопка просмотра и воспроизведения в режиме ожидания показана, но, хотя я нажал кнопку воспроизведения, она не воспроизводилась хорошо. черный экран был только показан.
Я не нашел ничего, чтобы решить проблему. Есть ли какие-либо изменения в плеере Youtube Iframe или пропущенные очки?
1 ответ
Я решил проблему, позвонив [videoView setMediaPlaybackRequiresUserAction:NO]
,
Я точно не знаю, почему метод мог спасти меня. По-видимому, произошла перемена, касающаяся запроса на игру на YouTube. Я мог бы найти следующие изменения на сайте разработчика YouTube.
28 января 2014 г.
Параметр playsinline управляет воспроизведением видео на встроенном или полноэкранном режиме в проигрывателе HTML5 на iOS. Установка значения в 1 вызывает встроенное воспроизведение.
Раздел "Выбор контента для воспроизведения" был обновлен, чтобы объяснить, как найти идентификаторы видео YouTube и идентификаторы плейлиста, используя API данных YouTube (v3), а не более старую версию API.
Определение параметра элементов управления было обновлено, чтобы отразить тот факт, что значение параметра влияет только на время, которое Flash Player фактически загружает при вставке IFrame. Кроме того, для встраивания IFrame значение параметра также определяет, когда элементы управления отображаются в проигрывателе. Если вы установите значение параметра на 2, то элементы управления отобразятся, и проигрыватель Flash загрузится после того, как пользователь начнет воспроизведение видео.
Я предполагаю, что одно из вышеуказанных изменений может потребовать дополнительной информации, которая передается от клиента на сервер YouTube для нормальной игры.
ОБНОВИТЬ:
Сегодня я определил, что это работает хорошо без моего решения. Похоже, что проблема была решена в последнее время.