来自老朋友 WebRTC 的更多好消息。
确切地说:这是好消息,并进行了几项细微的 API 更改。
适用于 Chrome 的 RTCDataChannel
RTCDataChannel 已在 Chrome 中实现,simpl.info/dc 上还有一个非常棒的小演示。
此演示展示了任意数据的点对点通信 - 只需不到 100 行代码。你需要使用 Chrome 25 或更高版本才能执行此操作。目前,此版本为 Beta 版或 Canary 版。
RTCDataChannel 充分利用了 RTCPeerConnection 的内置功能(而不仅仅是 ICE 框架通过防火墙和 NAT 时的用途),并拥有许多对游戏、远程桌面应用、实时文字聊天和文件传输至关重要的潜在应用。
如需详细了解 RTCDataChannel,请参阅 WebRTC 使用入门。
API 变更
不太有趣,但仍然很重要:从 Chrome 26 开始,某些 RTCPeerConnection 和 MediaStream API 属性已变为 getter 方法:
- MediaStream 现在使用
getAudioTracks()
方法(而非 audioTracks 属性),并使用getVideoTracks()
方法(而非videoTracks
)。 - RTCPeerConnection 现在具有
getLocalStreams()
(而非localStreams
)和getRemoteStreams()
(而非remoteStreams
)。
如需大致了解 MediaStream 的实际应用,请观看 simpl.info/gum getUserMedia
演示。stream
变量处于全局范围内:请从控制台对其进行检查。同样,对于 simpl.info/pc 中的 RTCPeerConnection:RTCPeerConnection 对象 pc1
和 pc2
处于全局范围内。
Chrome 浏览器 <=> Firefox
而且您 错过 它时,Chrome 现在可以与 Firefox “说话”了。
您现在可以访问 webrtc.org/start 尝试进行此操作,其中提供了完整说明、指向源代码的链接以及有关 API 差异的信息。
向 Mozilla 和 Google 员工致敬,让这一切成为现实。
祝您编码顺利!如果您发现任何 bug,请通过评论此博文或者在 bugs.chromium.org 上告诉我们。 别忘了,您随时可以从出色的 chromestatus.com 上获得最新的实施信息。