Подтвердить что ты не робот

Могу ли я избежать встроенного полноэкранного видеоплеера с HTML5 на iPhone или Android?

Я создал веб-приложение, которое использует тег HTML5 и код JavaScript, который отображает другой контент, синхронизированный с текущим видео. Он отлично работает в настольных браузерах: Firefox, Chrome и Safari. На iPhone или DroidX встроенный видеопроигрыватель всплывает и захватывает экран, тем самым скрывая другой динамический контент, который я хочу отображать одновременно с видео.

Есть ли способ обойти это? В случае необходимости я выясню, как писать собственные приложения для обеих платформ, но это сэкономит мне массу усилий, если я могу просто придерживаться HTML5/JavaScript.

4b9b3361

Ответ 1

Здесь есть свойство, которое разрешает/запрещает воспроизведение в режиме линейного воспроизведения в веб-браузере iOS (если вы пишете родное приложение, это будет свойство allowsInlineMediaPlayback UIWebView). По умолчанию на iPhone установлено значение NO, но на iPad он установлен на YES.

К счастью для вас, вы также можете настроить это поведение в HTML следующим образом:

<video id="myVideo" width="280" height="140" webkit-playsinline>

... это, надо надеяться, разобраться с вами. Я не знаю, будет ли это работать на ваших устройствах Android. Это свойство webkit, чтобы оно могло. Во всяком случае, стоит.

Ответ 2

В iOS 10 +

Apple включила атрибут playsinline во всех браузерах на iOS 10, поэтому это работает без проблем:

<video src="file.mp4" playsinline>

В iOS 8 и iOS 9

Краткий ответ: используйте iphone-inline-video, он позволяет встроить воспроизведение и синхронизировать звук.

Длинный ответ: Вы можете обойти эту проблему, моделируя воспроизведение, уменьшая видео, а не на самом деле .play().

Ответ 3

Здесь ссылка разработчика Apple, в которой явно говорит, что

на iPhone и iPod touch, которые являются устройствами небольшого экрана, "Видео НЕ, представленное на веб-странице"

Особые соображения, относящиеся к Safari

СЕЙЧАС:

  • Атрибут webkit-playsinline работает для видео в формате HTML5 на iOS, но , только когда вы сохраняете веб-страницу на своем главном экране в качестве веб-приложения. Если не открыли страницу в Safari
  • Для собственного приложения с WebView (или гибридного приложения с HTML, CSS, JS) UIWebView позволяет воспроизводить видеоролик, но только если вы установите allowsInlineMediaPlayback свойство для класса UIWebView для true

Ответ 5

Я не знаю об андроиде, но Safari на iPhone или iPod touch будет воспроизводить все видео на весь экран из-за небольшого размера экрана. На iPad он будет воспроизводить видео на странице, но позволит пользователю сделать это на весь экран.

Ответ 6

В iOS 10 beta 4. Правильный код в html 5 <video src="file.mp4" webkit-playsinline="true" playsinline="true"> webkit-playinginline для iOS 10-, а playinline для iOS 10 +.

Подробнее см. https://webkit.org/blog/6784/new-video-policies-for-ios/