Отключение автозапуска в полноэкранном режиме на iOS - PullRequest
0 голосов
/ 03 июля 2018

Единственная проблема, с которой я сталкиваюсь, заключается в том, что я не могу отключить воспроизведение видео на полном экране в соответствии с документацией Apple, это включено по умолчанию и должно быть установлено следующим образом:

webView.configuration.allowsInlineMediaPlayback = true

Что основано на моем понимании, как это должно быть. Однако это не работает, и даже после настройки сразу после нажатия кнопки воспроизведения на видео оно открывается в собственном полноэкранном проигрывателе. Я использую WKWebView.

Документация Apple для этого

Ответы [ 3 ]

0 голосов
/ 16 ноября 2018

У меня похожая проблема, но это небольшое изменение. У нас есть WkWebView, который загружает мобильное дружественное веб-приложение. В разных местах есть ссылки на видео, которые прекрасно работают, поскольку они открывают видеоплеер iOS по умолчанию, поэтому пользователь может перейти на полный экран. Это все здорово. Однако у нас есть раздел, где у нас есть несколько подкастов. Я пытаюсь использовать проигрыватель javascript провайдера потоковой передачи для этих аудиопотоков, но когда я нажимаю кнопку воспроизведения, проигрыватель видео iOS начинает работать. Мы не хотим этого, потому что у игрока провайдера есть некоторые функции, которые нам нужны. Я попытался добавить? Playsinline = 1, но не оказал никакого влияния на воспроизведение. Возможно ли это сделать, не влияя на воспроизведение видео в других областях нашего приложения?

0 голосов
/ 26 июня 2019

В Storyboad вы можете включить / отключить встроенное воспроизведение, чтобы остановить / разрешить полноэкранный режим.

0 голосов
/ 03 июля 2018

Воспроизведение видео inline требует двух условий:

  1. Настройка конфигурации
  2. Предоставление правильно отформатированной ссылки

1. Настройка конфигурации

Конфигурация WKWebView должна быть установлена ​​во время инициализации. Изменение allowsInlineMediaPlayback на более позднем этапе не будет работать:

let configuration = WKWebViewConfiguration()
configuration.allowsInlineMediaPlayback = true

let webView = WKWebView(frame: CGRect(x: 0, y: 0, width: view.frame.width, height: view.frame.height), configuration: configuration)

view.addSubview(webView)

2. Предоставление правильно отформатированной ссылки

Чтобы веб-представление знало, что видео должно начинать воспроизводиться inline, необходимо установить соответствующий параметр URL.

Для этого вам просто нужно добавить ?playsinline=1.

Пример:

webView.load(URLRequest(url: URL(string: "https://www.youtube.com/watch?v=OYbXaqQ3uuo?playsinline=1")!))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...