AgoraConnectionState

  • iOS

更新时间不可用

连接状态。

枚举值

参数名描述
AgoraConnectionStateDisconnected

(1):SDK 与声网边缘服务器断开连接。该状态表示 SDK 处于以下阶段之一:调用 joinChannelByToken:channelId:uid:mediaOptions:joinSuccess: 方法前的初始状态,或调用 leaveChannel: 方法后。

AgoraConnectionStateConnecting

(2):SDK 正在连接声网边缘服务器。该状态表示调用 joinChannelByToken:channelId:uid:mediaOptions:joinSuccess: 方法后,SDK 正在与指定频道建立连接。连接成功后,SDK 会触发 connectionChangedToState:reason: 回调,并将状态切换为 AgoraConnectionStateConnected。连接建立后,SDK 会初始化媒体,并在准备就绪时触发 didJoinChannel:withUid:elapsed: 回调。

AgoraConnectionStateConnected

(3):SDK 已连接到声网边缘服务器。该状态还表示用户已加入频道,并可在频道中发布或订阅媒体流。如果因网络中断或切换导致连接丢失,SDK 会自动尝试重连,并触发 connectionChangedToState:reason: 回调,通知当前状态变为 AgoraConnectionStateReconnecting。

AgoraConnectionStateReconnecting

(4):SDK 正在持续重连声网边缘服务器。该状态表示 SDK 因网络问题与频道断开连接后,正在尝试重新加入频道:

  • 若在 10 秒内未能重新加入频道,SDK 会触发 rtcEngineConnectionDidLost: 回调,保持在该状态并继续重连。
  • 若在断开连接 20 分钟后仍未成功重连,SDK 会触发 connectionChangedToState:reason: 回调,切换至 AgoraConnectionStateFailed 状态,并停止重连。
AgoraConnectionStateFailed

(5):SDK 无法连接声网边缘服务器或加入频道,并停止重连。用户被服务端踢出、Token 失效或鉴权失败时,回调报告的 reason 可能不同,但进入该状态后的恢复流程一致:

表格内容超出当前宽度,可横向滚动查看更多列。

这个页面有帮助吗?