WebRTC 常见问题
优质
小牛编辑
130浏览
2023-12-01
1. 凡泰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. 如何在凡泰SDK内使用WebRTC?
由于WebRTC本质是在网页浏览器中进行实时语音对话或视频,而凡泰SDK是支持webview打开指定H5页面的。
因此,在使用包含WebRTC相关能力的H5页面时,开发者只需关注以下问题:
- WebRTC通常需要一个中转服务器,该服务器的业务域名也需要进行域名配置 如何实现域名配置?
- 使用包含音视频功能的H5前,需要提前申请摄像头和麦克风权限,建议由App先申请权限。
凡泰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已经向用户成功获取了摄像头、麦克风权限
- 此时在凡泰SDK内加载包含WebRTC的H5时,就可以直接采集音视频了;
- 同时,H5内的功能也可以弹出Alert,询问用户是否允许采集摄像头、是否允许使用麦克风,从而实现单独控制采集的目标。
情形二:如果用户未给予App开启摄像头、麦克风权限
- 此时,SDK加载包含WebRTC功能的H5时,将无法采集音视频。
4. 关于凡泰Android SDK对WebRTC支持情况的说明
- 凡泰Android SDK对WebRTC的支持源于Android原生WebView对WebRTC的支持。
- 根据Android开发者平台关于Android 5.0版本WebView的相关描述,WebView自Android 5.0版本起添加了对WebRTC的支持。相关描述 (opens new window)
- 云测数据表明,Android 5.0机型对于WebRTC官方示例AppRTC还不能正常支持。
原因在于Android 5.0 WebView内核由Android System WebView APK提供,而Android 5.0云测设备包含的Android System WebView APK版本都比较低。 - Android 6.0及以上版本机型云测几乎全部通过对AppRTC支持。因为可以认定为凡泰Android SDK对WebRTC支持的最低Android系统版本为Android 6.0。