Добавить webRTC в веб-просмотр в iOS?

Я создал чат, но с webView. Проблема в том, что в чате есть видео и голос, которые не поддерживаются iOS, потому что он не поддерживает webRTC.

Главный вопрос заключается в том, как я могу легко добавить RTC внутри webView в Swift для поддержки видео и голоса iOS?


person Steven    schedule 22.09.2016    source источник
comment
SFSafariViewController теперь поддерживает webrtc в ios13. bugs.webkit.org/show_bug.cgi?id=183201#c28   -  person XDev 2381    schedule 17.06.2020
comment
вероятно, следует обновить принятый вопрос до второго ответа, который более обновлен.   -  person zaxy78    schedule 14.04.2021


Ответы (4)


К сожалению, с текущей поддержкой WebRTC в веб-браузере iOS вы не можете легко добавить WebRTC. Вам придется использовать нативные библиотеки iOS (https://webrtc.org/native-code/ios/ ).

person Chuck Hays    schedule 28.10.2016
comment
Я думаю, что это изменилось. В iOS 11 есть поддержка WebRTC в WKWebView :) - person zaxy78; 02.11.2017
comment
это не WKWebView по-прежнему не поддерживает WebRTC - person Luis; 13.10.2018
comment
@zaxy78 есть новости с iOS 12? для getUserMedia - person Luis; 21.10.2018
comment
@Luis, я заметил, что кто-то нашел вызов WebKit JS для повторной активации getUserMedia. хотите попробовать воспроизвести и сообщить нам, действительно ли это работает? См. комментарий на этой странице: openradar.me/33571214 - person zaxy78; 23.10.2018
comment
@ zaxy78 zaxy78 это не работает, комментарий говорит Однако вызов getUserMedia завершается сбоем с ошибкой SecurityError: The operation is insecure. для решения этой проблемы (нет возможности увидеть ссылку на тикет) - person Luis; 24.10.2018
comment
разочаровывает :( но спасибо за обновление. обновлю, если замечу изменения - person zaxy78; 24.10.2018
comment
что-то изменится для iOS 13? - person Mathias; 18.08.2019
comment
Теперь WKWebView на iOS 14.3 поддерживает WebRTC - person Almas Adilbek; 13.01.2021
comment
@AlmasAdilbek yap, обратите внимание на мой ответ ниже. - person zaxy78; 12.05.2021

Начиная с iOS 14.3 (бета-версия)

Apple добавляет полную поддержку WebRTC в WKWebView! ????

Узнайте больше здесь: https://webkit.org/blog/11353/mediarecorder-api/< /а>

От iOS11+

Apple добавила поддержку WebRTC в Safari.
Если вы хотите использовать WKWebView, поддержка будет только частичной. Проверьте этот ответ:

Поддержка WebRTC в iOS 11 — объяснение

person zaxy78    schedule 02.11.2017
comment
WKWebView по-прежнему не поддерживает WebRTC, даже Safari. - person Luis; 13.10.2018
comment
Он поддерживает некоторые свои функции, но не getUserMedia(). ознакомьтесь с моим полным ответом здесь: stackoverflow.com/a/49467964/1047547 - person zaxy78; 14.10.2018

getUserMedia не поддерживается в WKWebView

Эта ошибка была зарегистрирована в радаре, системе отслеживания ошибок Apple: http://www.openradar.me/33571214< /а>

person Ahmed Mihoub    schedule 16.04.2018

ОБНОВЛЕНИЕ. К сожалению, в этой структуре есть поддержка только микрофона!


Наконец-то есть решение!

WKWebViewRTC — это совершенно новая библиотека WebRTC для WKWebView для Swift на iOS, и она прекрасно работает!

https://github.com/OpenTelecom/WKWebViewRTC

  1. клонировать репозиторий и строить фреймворк

  2. добавьте фреймворк в свой проект с настройкой Embed & Sign

  3. добавьте эту строку кода после инициализации WKWebView

     WKWebViewRTC(wkwebview: webView, contentController: controller)
    

Таким образом, доступны для использования mediaDevices и getUsermedia.

Минимальная версия фреймворка для iOS — iOS 12.

person Tímea Molnár    schedule 24.07.2020