SMeetingRemoteVideoView 是渲染远端成员画面的 SwiftUI 组件。它把「订阅 / 退订」和「视图生命周期」绑定在一起,你只要让视图出现和消失,订阅关系就跟着走。
可用性:iOS 13.0+ / macOS 10.15+。
init(meeting:uid:trackDesc:)
返回值: 一个 SwiftUI
View
行为约定
- 视图出现时按
(uid, trackDesc)发起订阅,视图消失时退订 uid或trackDesc变化时会自动退订旧的、订阅新的,你不需要给视图加id(...)强制重建- 布局切换导致视图重建(旧实例消失、新实例紧接着出现)时不会产生多余的退订 + 重订,画面不会闪断
- 同一路画面在多个位置同时渲染时,关掉其中一处不会影响其它位置
- 订阅完成与底层媒体到达不是同一时刻,组件会在数据真正到达后自动完成绑定,你不需要做延时或重试
- 订阅失败不会崩溃,视图保持空白,失败原因会写进 SDK 日志