# WebRTC 常见问题

# 1. FinClip SDK是否支持 WebRTC?

支持,使用时请确保 SDK 及手机系统均满足以下条件:

SDK版本要求 手机系统要求
Android SDK版本为2.24.1及以上 Android系统 6.0及以上
iOS SDK版本为2.33.9及以上 iOS系统 14.3及以上

提示

1.iOS 2.24.4~~2.27.1 也支持 WebRTC,不过在 H5 中读取 UserAgent 会偶现不包含 Provider/finogeeks (miniprogram; FinChat; runtimeSdkVersion/2.27.1) 的情况,建议使用 2.33.9 以及以上版本。 2.Android 支持情况请查看后文中的详细说明。

# 2. 如何在 FinClip SDK 内使用 WebRTC?

由于 WebRTC 本质是在网页浏览器中进行实时语音对话或视频,而 FinClip SDK 是支持 webview 打开指定H5页面的。

因此,在使用包含 WebRTC 相关能力的 H5 页面时,开发者只需关注以下问题:

  • WebRTC 通常需要一个中转服务器,该服务器的业务域名也需要进行域名配置 如何实现域名配置?
  • 使用包含音视频功能的 H5 前,需要提前申请摄像头和麦克风权限,建议由 App 先申请权限。

FinClip SDK 并未声明录音权限,因此需要APP添加权限声明。 以 Android 为例,在 Manifest 文件中添加以下权限声明:

<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

# 3. 关于App权限与SDK内小程序的关系

情形一:App 已经向用户成功获取了摄像头、麦克风权限

  • 此时在 FinClip SDK 内加载包含 WebRTC 的 H5 时,就可以直接采集音视频了;
  • 同时,H5内的功能也可以弹出 Alert,询问用户是否允许采集摄像头、是否允许使用麦克风,从而实现单独控制采集的目标。

情形二:如果用户未给予 App 开启摄像头、麦克风权限

  • 此时,SDK 加载包含 WebRTC 功能的 H5 时,将无法采集音视频。

# 4. 关于 FinClip Android SDK 对 WebRTC 支持情况的说明

  1. FinClip Android SDK 对WebRTC的支持源于 Android 原生 WebView 对 WebRTC 的支持。
  2. 根据 Android 开发者平台关于 Android 5.0 版本 WebView 的相关描述,WebView 自 Android 5.0 版本起添加了对 WebRTC 的支持。相关描述 (opens new window)
  3. 云测数据表明,Android 5.0机型对于WebRTC官方示例AppRTC还不能正常支持
    原因在于 Android 5.0 WebView 内核由 Android System WebView APK 提供,而 Android 5.0 云测设备包含的 Android System WebView APK 版本都比较低。
  4. Android 6.0 及以上版本机型云测几乎全部通过对 AppRTC 支持。因为可以认定为 FinClip Android SDK 对 WebRTC 支持的最低 Android 系统版本为 Android 6.0
© 2021 凡泰极客
  • 免费试用
  • 编组
  • 编组 2