自从开始作WebRTC开发以来,常常被别人问到,safari浏览器能支持WebRTC吗?我也很但愿safari能支持WebRTC,这样就不用写原生WebRTC应用或者Safari浏览器插件了。
很高兴的是,近期Apple公司宣布,WebRTC将会进入Safari和iOS 11。事实上,若是你是苹果的注册开发者,你就能够尝试使用支持WebRTC的测试版Safari浏览器。我提早试用了下测试版本的safari,写了一个最简单的WebRTC小程序在上面运行了一下。下面我把我遇到的几个老是和你们分享一下:chrome
- safari和safari相链接很快就成功了,可是当safari和chrome,firefox相链接时,设置Offer sdp或者设置answer sdp时会发生如下异常:TypeError: Attempted to assign to readonly property.
- 与chrome相比,getStats 接口也有点不同。若是在Chrome中若是没有传选择器参数,你还能够获得许多数据,可是在Safari中作一样的事情会抛出如下错误:Argument 1 (‘selector’) to RTCPeerConnection. getStats must be an instance of MediaStreamTrack
- 在chrome中,咱们能够在一个PeerConnection中同时建立多个Datachannels,可是在Safari中是行不通的。固然这个问题咱们是能够经过其它方式绕开的,可是我仍是但愿Safari的接口能和chrome保持一致。
这就是我暂时发现Safari测试版本中的几个小问题,若是大家也在试用Safari,有什么新的发现,能够和我交流一下。小程序