我们有一个 Android 应用程序,它使用 webview 来处理我们的 webRTC 连接。自 2023 年 6 月更新(至版本 114.x)以来,当 webRTC 进入 ICE 候选选择时,我们一直经历着可怕的 40 秒延迟。
还有其他人看到这个问题吗?
您遇到了 https://bugs.chromium.org/p/webrtc/issues/detail?id=7844
您使用的 Google STUN 服务器具有 IPv6 的 AAAA 记录,并且在您正在查看的计算机上超时,可能是因为没有 IPv6 上行链路。
Twilio 的 STUN 服务器仅具有 IPv4 A 记录(或者更确切地说是指向 A 记录的 CNAME),因此不会尝试收集服务器反射性 IPv6 候选者。
这个超时是故意的。如果您同意不支持服务器反射 IPv6 候选者,您应该在收集 srflx IPv4 候选者后发送报价,而不是等待收集状态更改完成。或者更确切地说,jssip 应该,我建议提交一个错误。
现在为什么这种行为在 Android WebView 的 2023 年 6 月更新中发生了变化……可能与 DNS 相关。