BRTC 提供两套关于通话质量反馈的回调:
BRTCListener brtcListener = new BRTCListener() { @Override public void onStatistics(BRTCStatistics statics) { Log.d(TAG, "onStatistics: " + statics.toString()); runOnUiThread(new Runnable() { @Override public void run() { // App CPU 使用率: statics.appCpu // 发送字节数: statics.sendBytes // 接收字节数: statics.receiveBytes ArrayList<BRTCStatistics.BRTCLocalStatistics> localArray = statics.localArray; // 本地音视频流数据 if (localArray != null && !localArray.isEmpty()) { for (BRTCStatistics.BRTCLocalStatistics localStatics:localArray) { // 读取 localStatics 详细信息 } } ArrayList<BRTCStatistics.BRTCRemoteStatistics> remoteArray = statics.remoteArray; if (remoteArray != null && !remoteArray.isEmpty()) { for (BRTCStatistics.BRTCRemoteStatistics remoteStatics:remoteArray) { // 读取 remoteStatics 详细信息 } } } }); } @Override public void onNetworkQuality(@NonNull ArrayList<BRTCDef.BRTCNetworkQualityInfo> networkQualityInfos) { for (BRTCDef.BRTCNetworkQualityInfo networkQualityInfo : networkQualityInfos) { // 读取 networkQualityInfo 详细信息 if (networkQualityInfo.userId == "0") { // 本地用户 // networkQualityInfo.networkQuality // 本地用户网络质量 } else { // 远端用户 // networkQualityInfo.networkQuality // 远端用户网络质量 } } } };
通话质量检测
BRTC 提供两套关于通话质量反馈的回调:
示例代码