Flutter

最近更新时间:2025-07-25 16:11:52

我的收藏
本文档主要介绍如何感知当前网络的好与坏。
当我们在使用微信视频通话的时候,如果遇到网络环境较差的情况(例如在进入电梯以后),微信会在视频通话的界面上提示“您当前的网络质量较差”。本文档主要介绍如何通过 TRTC 完成同样的交互。




调用指引

TRTC 提供了一个叫做 onNetworkQuality 的回调事件,它会每隔两秒钟一次向您汇报当前的网络质量,其参数包括 localQuality 和 remoteQuality 两个部分:
localQuality :代表您当前的网络质量,分为 6 个等级,分别是 Excellent、Good、Poor、Bad、VeryBad 和 Down。
remoteQuality:代表远端用户的网络质量,这是一个数组,数组中的每个元素代表一个远端用户的网络质量。
Quality
说明
unknown
未感知到。
excellent
当前网络非常好。
good
当前网络比较好。
poor
当前网络一般。
bad
当前网络较差,可能会出现明显的卡顿和通话延迟。
vBad
当前网络很差,TRTC 只能勉强保持连接,但无法保证通讯质量。
down
当前网络不满足 TRTC 的最低要求,无法进行正常的音视频通话。
您只需要监听 TRTC 的 onNetworkQuality 并在界面上做相应地提示即可:
TRTCCloudListener(
onNetworkQuality: (localQuality, remoteQuality) {
switch(localQuality.quality) {
case TRTCQuality.unknown:
//TODO: Handle this case.
break;
case TRTCQuality.excellent:
// TODO:Handle this case
break;
case TRTCQuality.good:
// TODO: Handle this case.
break;
case TRTCQuality.poor:
// TODO: Handle this case.
break;
case TRTCQuality.bad:
// TODO: Handle this case.
break;
case TRTCQuality.vBad:
// TODO: Handle this case.
break;
case TRTCQuality.down:
// TODO: Handle this case.
break;
}
for (TRTCQualityInfo info in remoteQuality) {
// TODO: Handle this case.
}
}
);