Ich habe eine URL, die mit Safari auf iOS11 gut funktioniert (Beta) Audio / Video funktioniert gut. Aber wenn ich diese URL mit WKWebView lade, erhalte ich den Fehler "Inkompatibler Browser" und wenn ich meine Browser-Version in WebKit überprüfe, wird "WebKit-basierter Browser auf iOS 11" angezeigt.
Also die Frage ist wirklich, hat Apple diese Änderung in das WKWebview-Webkit (welches dasselbe wie Safari sein sollte) für den Entwickler BETA von iOS 11 aufgenommen?
Ich habe letzte Nacht ein wenig in den WebKit-Quellen gegraben, und es sieht so aus, als ob das WebRTC / MediaCapture-Zeug hinter einer Voreinstellung gegattert ist, die nur über eine private API zugänglich ist. Es gab auch ein Commit, in dem etwas über Apps erwähnt wurde, die alle Einstellungen für A / V-Berechtigungen handhaben mussten.
In jedem Fall ist das Ergebnis, dass getUserMedia in WKWebView nicht funktioniert, nicht einmal auf iOS11 (mindestens Beta 4): (
Ich habe ein Radargerät (rdar: // 33571214 und Ссылка ) angemeldet und ermutige alle anderen, dasselbe zu tun.
Ich habe einige Tests mit iOS Beta 4 durchgeführt und es scheint, dass sogar WKWebview und UIWebview getUserMedia nicht als WebRTC-API unterstützen.
Kann jemand das bestätigen?
WebRTC in iOS 11 WKWebView wird teilweise unterstützt .
WebRTC hat drei Haupt-JavaScript-APIs:
Alle werden in Safari app sowohl auf macOS als auch auf iOS.
Aber wenn WKWebView oder SFSafariViewController verwendet wird, wird es nicht vollständig unterstützt:
RTCPeerConnection
als auch RTCDataChannel
sind unterstützt und funktionieren. getUserMedia
wird aus Sicherheitsgründen noch nicht nicht unterstützt. Hoffentlich werden wir in iOS 12 einen gewissen Fortschritt sehen ...