onRoomStreamUpdate property
getter/setter pair
相同房间内其他用户推的流增加或减少的通知。
支持版本:1.1.0 及以上。
详情描述:当房间内有其他用户开始推流或停止推流时,导致房间内流列表发生变化,会通过本回调通知开发者。
业务场景:开发者可根据此回调来判断指定房间内其他用户是否新增推流或停止推流,并根据情况选择调用 startPlayingStream
主动拉流或调用stopPlayingStream
停止拉流,同时也可以变更拉流的 UI 控件。
通知时机:
- 用户首次登录房间时,如果房间内其他用户正在推流,SDK 会触发 updateType 为
ZegoUpdateTypeAdd
的回调通知,此时 "streamList" 为已存在的流列表。 - 用户已在房间内,如果有其他用户新增推流,SDK 会触发 "updateType" 为
ZegoUpdateTypeAdd
的回调通知。 - 用户已在房间内,如果有其他用户停止推流,SDK 会触发 "updateType" 为
ZegoUpdateTypeDelete
的回调通知。 - 用户已在房间内,如果有其他用户退出房间,SDK 会触发 "updateType" 为
ZegoUpdateTypeDelete
的回调通知。 使用限制:无。
roomID
用户已登录的房间 ID,最大长度为 128 字节的字符串。updateType
更新类型(添加/删除)。streamList
更新的流列表。extendedData
流更新附带的扩展信息。收到流删除通知时,开发者可将该字符串转为 json 对象得到 stream_delete_reason 字段,该字段为流删除原因的数组,stream_delete_reason[].code 字段可能为如下值:1(用户主动停止推流); 2(用户心跳超时); 3(用户重复登录); 4(用户被踢出); 5(用户断线); 6(被服务端移除)。
Implementation
static void Function(
String roomID,
ZegoUpdateType updateType,
List<ZegoStream> streamList,
Map<String, dynamic> extendedData)? onRoomStreamUpdate;