如何为不支持的WebRTC JS的API中的WebKit(WkWebview)

问题描述:

目的的本地支持:如何为不支持的WebRTC JS的API中的WebKit(WkWebview)

提供了WebKit中不支持的WebRTC JS API的原生支持,并通过WkWebView加载web应用程序的WebRTC呼叫。

到目前为止,我曾尝试:

截至目前的WebRTC W3C的JavaScript API不支持的WebKit。

有一个可以从cordova获得的跨平台插件来支持webRTC,但我不想跨平台的方式。

有一个的WebRTC native framework可用,但我不想去完全原生方式

到目前为止,我是能够覆盖navigator.getUserMedia在JavaScript

navigator.getUserMedia = function(constraints, onSuccess, onError){ 
myWebRTC.getUserMedia(document.getElementById('roomid').value) 
} 

和调用本地AppRTC SDK API从本地端发起呼叫,并且工作正常。

if let roomId=NSUserDefaults.standardUserDefaults().valueForKey("RoomId"){ 
appClient = ARDAppClient(delegate: self) 
appClient?.createLocalMediaStream() 
appClient?.connectToRoomWithId(String(roomId), options: nil) 
localVideoView?.hidden = false; 
remoteVideoView?.hidden = false; 
btnDisconnect?.hidden = false; 
webview?.hidden = true; 
} 

下面是完整的source code

AppRTC它有自己的本地视频的看法,但我想说明的网页视图内的HTML元素的视频。

AppRTC并没有提供视频流,即使我可以通过它来获取流,如何将流赋予wkwebview是一个挑战bcuz其RTC只与evaluatejavascript我不认为它是可能的。

因此,我已经集成了CocoaHTTPServer,我正在考虑寻找一种方法从此流向WkWebView。

任何见解,建议在实现我的目标是高度赞赏!

+0

[你见过?](https://github.com/EricssonResearch/openwebrtc-examples/wiki/Developing-a-hybrid-iOS-app) – Kevin

+0

Openwebrtc并不完全支持WebRTC JS API。他们正在工作在上面。你也可以在iTunes中尝试一下** Bowser **,它不过是一个支持WebRTC的浏览器,使用OpenWebRTC库。但是我试图通过加载https://apprtc.appspot.com来打电话,发生 –

可以使用plugin iosRTC iOS和人行横道为Android,但我们没有找到一个跨平台的插件:/

这里我们的教程:https://apirtc.com/apirtc-on-cordova/

而且一个与科尔多瓦示例项目:https://github.com/apizee/ApiRTC-mobile

+0

我不打算使用科尔多瓦..我想做一个混合的方式!迅速在本地和wkwebview –