Hir*_*roo 5 android disconnect webrtc
我正在开发app
基于webRTC
使用 android的语音聊天libjingle
。我想在用户将网络从wifi
4g更改为 4g(反之亦然)或断开连接时通过使用 ice restart 重新连接用户。我有一个关于使用libjingle
. 我将根据我的理解写下如何实现冰重启功能,以便让我知道有什么问题。
问:据我所知,首先我需要在选项中将 ice start 选项设置为 trueMediaConstraints
而不删除对等连接??用于第一次连接,如下所示:
mediaConstraints.optional.add(new MediaConstraints.KeyValuePair("IceRestart", "true"));
Run Code Online (Sandbox Code Playgroud)
其次,我需要MediaConstrants
使用对等连接 ??(用于第一个连接)的 updateIce 方法进行更新,如下所示:
peerConnection.updateIce(iceServers, mediaConstraints);
Run Code Online (Sandbox Code Playgroud)
最后发个offer对不对,跟基础webrtc
网络一样吗?
小智 5
为了进行 ice restart,发送方应该发送不同的 ice-pwd 或 ice-ufrag 的 SDP 文件。IceRestart 选项强制 PeerConnection 更新这些值。
步骤应该是:
cons.mandatory.add(new MediaConstraints.KeyValuePair("IceRestart", "true"));
pc.createOffer(new WebRtcObserver(callbacks), cons);
pc.setLocalDescription(new WebRtcObserver(callbacks), sdp);
所以步骤 2-4 与常规报价相同。
归档时间: |
|
查看次数: |
3474 次 |
最近记录: |