通知
本站点除 Legacy 产品与方案外,已迁移至 声网新文档中心 ,当前页面不再维护
文档中心
全部产品
Console 官网 社区 技术支持

Web SDK 如何与 Native SDK 互通?

分类: 集成类    平台: Android / iOS / macOS / Web / Windows   最后更新时间: 2023/01/12 23:54:23

对于 v3.0.0 及以上版本的 RTC Native SDK,与 Web SDK 的互通是默认打开的,无需设置。

而 v3.0.0 之前的 SDK,通信场景下,Web SDK 和 Native SDK 默认互通,无需额外设置。在直播场景下,移动端/桌面端和 Web 端必须同时手动设置,才能实现互通:

  • 移动端/桌面端:调用 enableWebSdkInteroperability API 方法。

      // java
      // 移动端调用 enableWebSdkInteroperability 方法开启与 Web SDK 的互通
      rtcEngine.enableWebSdkInteroperability(true);
      // swift
      // 移动端/桌面端调用 enableWebSdkInteroperability 方法开启与 Web SDK 的互通
      agoraKit.enableWebSdkInteroperability(true)
      // objective-c
      // 移动端/桌面端调用 enableWebSdkInteroperability 方法开启与 Web SDK 的互通
      [agoraKit enableWebSdkInteroperability: YES];
      // cpp
      // 桌面端调用 enableWebSdkInteroperability 方法开启与 Web SDK 的互通
      lpAgoraEngine->enableWebSdkInteroperability
  • Web 端:将 createClient 方法中的 mode 设置为 'live' 实现互通。

      // javascript
      // Web 端在创建客户端时,选择正确的 mode 和 codec 参数
      var client = AgoraRTC.createClient({ mode: 'live', codec: 'h264' });
根据已知经验,如果场景中有 Safari 浏览器,则建议在 Web 端将 codec 设为 h264;如果没有,则建议设为 vp8