React Native Agora项目频道无法获取流列表,能否通过react-native-agora实现?
react-native-agora频道流列表获取实现方案
完全可以通过react-native-agora自主实现频道内全量当前流列表的获取,不受RtcLocalView内置逻辑限制,具体实现流程如下:
- 本地初始化一个数组维护流列表数据,参考示例:
const [streamList, setStreamList] = useState<{uid: number; hasAudio: boolean; hasVideo: boolean}[]>([]) - 注册RTC引擎的
onUserJoined回调:每当有远端用户加入频道并发布流时,将对应用户的uid、音视频状态信息追加到流列表中 - 注册RTC引擎的
onUserOffline回调:每当远端用户主动离开频道、网络中断掉线或停止发布流时,将对应uid的条目从流列表中移除 - 若需要将本地流纳入列表,可在
onJoinChannelSuccess回调触发后,将本地用户的uid及本地音视频状态信息添加到流列表
补充说明:如果你的业务场景需要更精细的流状态控制,可额外监听onRemoteAudioStateChanged、onRemoteVideoStateChanged回调,实时同步流的开关状态、播放状态到你维护的流列表中,完全满足自定义控制需求。
内容的提问来源于stack exchange,提问作者Ademir Mochi
相关产品推荐
相关产品推荐

