IRTCEngineEventHandler class
@detail callback
@brief 音视频引擎事件回调接口
注意:回调函数是在 SDK 内部线程(非 UI 线程)同步抛出来的,请不要做耗时操作或直接操作 UI,否则可能导致 app 崩溃。
Constructors
-
IRTCEngineEventHandler({FutureOr<
void> onWarning(WarningCode code)?, FutureOr<void> onError(ErrorCode code)?, FutureOr<void> onExtensionAccessError(String extensionName, String msg)?, FutureOr<void> onSysStats(SysStats stats)?, FutureOr<void> onNetworkTypeChanged(NetworkType type)?, FutureOr<void> onUserStartVideoCapture(String streamId, StreamInfo info)?, FutureOr<void> onUserStopVideoCapture(String streamId, StreamInfo info)?, FutureOr<void> onUserStartAudioCapture(String streamId, StreamInfo info)?, FutureOr<void> onUserStopAudioCapture(String streamId, StreamInfo info)?, FutureOr<void> onLocalAudioStateChanged(dynamic audioSource, LocalAudioStreamState state, LocalAudioStreamError error)?, FutureOr<void> onRemoteAudioStateChanged(String streamId, StreamInfo streamInfo, RemoteAudioState state, RemoteAudioStateChangeReason reason)?, FutureOr<void> onLocalVideoStateChanged(dynamic videoSource, LocalVideoStreamState state, LocalVideoStreamError error)?, FutureOr<void> onRemoteVideoStateChanged(String streamId, StreamInfo streamInfo, RemoteVideoState state, RemoteVideoStateChangeReason videoStateReason)?, FutureOr<void> onRemoteVideoSuperResolutionModeChanged(String streamId, StreamInfo streamInfo, VideoSuperResolutionMode mode, VideoSuperResolutionModeChangedReason reason)?, FutureOr<void> onVideoDenoiseModeChanged(VideoDenoiseMode mode, VideoDenoiseModeChangedReason reason)?, FutureOr<void> onFirstRemoteVideoFrameRendered(String streamId, StreamInfo streamInfo, VideoFrameInfo frameInfo)?, FutureOr<void> onFirstRemoteVideoFrameDecoded(String streamId, StreamInfo streamInfo, VideoFrameInfo frameInfo)?, FutureOr<void> onFirstLocalVideoFrameCaptured(dynamic videoSource, VideoFrameInfo frameInfo)?, FutureOr<void> onLocalVideoSizeChanged(dynamic videoSource, VideoFrameInfo frameInfo)?, FutureOr<void> onRemoteVideoSizeChanged(String streamId, StreamInfo streamInfo, VideoFrameInfo frameInfo)?, FutureOr<void> onConnectionStateChanged(int state, int? reason)?, FutureOr<void> onAudioRouteChanged(AudioRoute device)?, FutureOr<void> onFirstLocalAudioFrame(dynamic audioSource)?, FutureOr<void> onFirstRemoteAudioFrame(String streamId, StreamInfo streamInfo)?, FutureOr<void> onSEIMessageReceived(String streamId, StreamInfo streamInfo, Uint8List message)?, FutureOr<void> onSEIStreamUpdate(String streamId, StreamInfo streamInfo, SEIStreamUpdateEvent event)?, FutureOr<void> onLoginResult(String uid, LoginErrorCode errorCode, int elapsed)?, FutureOr<void> onLogout(LogoutReason reason)?, FutureOr<void> onServerParamsSetResult(int error)?, FutureOr<void> onGetPeerOnlineStatus(String peerUserId, UserOnlineStatus status)?, FutureOr<void> onUserMessageReceivedOutsideRoom(int msgid, String uid, String message)?, FutureOr<void> onUserBinaryMessageReceivedOutsideRoom(int msgid, String uid, Uint8List message)?, FutureOr<void> onUserMessageSendResultOutsideRoom(int msgid, UserMessageSendResult error)?, FutureOr<void> onServerMessageSendResult(int msgid, UserMessageSendResult error, Uint8List message)?, FutureOr<void> onNetworkDetectionResult(NetworkDetectionLinkType type, NetworkQuality quality, int rtt, double lostRate, int bitrate, int jitter)?, FutureOr<void> onNetworkDetectionStopped(NetworkDetectionStopReason reason)?, FutureOr<void> onAudioDeviceStateChanged(String deviceId, AudioDeviceType deviceType, MediaDeviceState deviceState, MediaDeviceError deviceError)?, FutureOr<void> onVideoDeviceStateChanged(String deviceId, VideoDeviceType deviceType, MediaDeviceState deviceState, MediaDeviceError deviceError)?, FutureOr<void> onAudioDeviceWarning(String deviceId, AudioDeviceType deviceType, MediaDeviceWarning deviceWarning)?, FutureOr<void> onVideoDeviceWarning(String deviceId, VideoDeviceType deviceType, MediaDeviceWarning deviceWarning)?, FutureOr<void> onRecordingStateUpdate(dynamic videoSource, RecordingState state, RecordingErrorCode errorCode, RecordingInfo info)?, FutureOr<void> onRecordingProgressUpdate(dynamic videoSource, RecordingProgress process, RecordingInfo info)?, FutureOr<void> onAudioRecordingStateUpdate(AudioRecordingState state, AudioRecordingErrorCode errorCode)?, FutureOr<void> onAudioMixingPlayingProgress(int mixId, int progress)?, FutureOr<void> onLocalAudioPropertiesReport(List<LocalAudioPropertiesInfo> audioPropertiesInfos)?, FutureOr<void> onAudioPlaybackDeviceTestVolume(int volume)?, FutureOr<void> onRemoteAudioPropertiesReport(List<RemoteAudioPropertiesInfo> audioPropertiesInfos, int totalRemoteVolume)?, FutureOr<void> onActiveSpeaker(String roomId, String userId)?, FutureOr<void> onEchoTestResult(EchoTestResult result)?, FutureOr<void> onCloudProxyConnected(int interval)?, FutureOr<void> onAudioDumpStateChanged(AudioDumpStatus status)?, FutureOr<void> onLicenseWillExpire(int days)?, FutureOr<void> onHardwareEchoDetectionResult(HardwareEchoDetectionResult result)?, FutureOr<void> onLocalProxyStateChanged(LocalProxyType localProxyType, LocalProxyState localProxyState, LocalProxyError localProxyError)?, FutureOr<void> onEffectError(EffectErrorType error, String msg)?, FutureOr<void> onStreamSyncInfoReceived(String streamId, StreamInfo streamInfo, SyncInfoStreamType streamType, Uint8List data)?, FutureOr<void> onExternalScreenFrameUpdate(FrameUpdateInfo engine, FrameUpdateInfo? frameUpdateInfo)?, FutureOr<void> onRemoteSnapshotTakenToFile(String streamId, String filePath, int width, int height, SnapshotErrorCode errorCode, int taskId)?, FutureOr<void> onAudioFrameSendStateChanged(String streamId, StreamInfo streamInfo, RtcUser user, FirstFrameSendState state)?, FutureOr<void> onVideoFrameSendStateChanged(String streamId, StreamInfo streamInfo, RtcUser user, FirstFrameSendState state)?, FutureOr<void> onAudioFramePlayStateChanged(String streamId, StreamInfo streamInfo, RtcUser user, FirstFramePlayState state)?, FutureOr<void> onVideoFramePlayStateChanged(String streamId, StreamInfo streamInfo, RtcUser user, FirstFramePlayState state)?, FutureOr<void> onSimulcastSubscribeFallback(String streamId, StreamInfo streamInfo, RemoteStreamSwitch event)?, FutureOr<void> onPerformanceAlarms(String streamId, StreamInfo streamInfo, PerformanceAlarmMode mode, PerformanceAlarmReason reason, SourceWantedData data)?, FutureOr<void> onRemoteAudioPropertiesReportEx(List<RemoteAudioPropertiesInfo> audioPropertiesInfos, int? totalRemoteVolume)?, FutureOr<void> onMixedStreamEvent(MixedStreamTaskInfo info, MixedStreamTaskEvent event, MixedStreamTaskErrorCode error)?, FutureOr<void> onSingleStreamEvent(String taskId, SingleStreamTaskEvent event, SingleStreamTaskErrorCode error)?, FutureOr<void> onExperimentalCallback(String param)?, FutureOr<void> onPushPublicStreamResult(String roomId, String streamId, PublicStreamErrorCode errorCode)?, FutureOr<void> onLogReport(String logType, dynamic logContent)?, FutureOr<void> onNetworkTimeSynchronized()?})
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
-
onActiveSpeaker
↔ FutureOr<
void> Function(String roomId, String userId)? -
@detail callback
@author gongzhengduo
@brief 调用 enableAudioPropertiesReport{@link #RTCEngine#enableAudioPropertiesReport} 后,根据设置的
AudioPropertiesConfig.interval,你会周期性地收到此回调,获取房间内的最活跃用户信息。 @param roomId 房间 ID @param uid 最活跃用户(ActiveSpeaker)的用户 IDgetter/setter pair -
onAudioDeviceStateChanged
↔ FutureOr<
void> Function(String deviceId, AudioDeviceType deviceType, MediaDeviceState deviceState, MediaDeviceError deviceError)? -
@detail callback
@author dixing
@brief 音频设备状态回调。提示音频采集、音频播放等媒体设备的状态。
@param deviceID 设备 ID
@param deviceType 设备类型,详见 AudioDeviceType{@link #AudioDeviceType}。
@param deviceState 设备状态,详见 MediaDeviceState{@link #MediaDeviceState}。
@param deviceError 设备错误类型,详见 MediaDeviceError{@link #MediaDeviceError}。
getter/setter pair
-
onAudioDeviceWarning
↔ FutureOr<
void> Function(String deviceId, AudioDeviceType deviceType, MediaDeviceWarning deviceWarning)? -
@detail callback
@author dixing
@brief 音频设备警告回调。音频设备包括音频采集设备、音频渲染设备等。
@param deviceID 设备 ID
@param deviceType 参看 AudioDeviceType{@link #AudioDeviceType}
@param deviceWarning 参看 MediaDeviceWarning{@link #MediaDeviceWarning}
getter/setter pair
-
onAudioDumpStateChanged
↔ FutureOr<
void> Function(AudioDumpStatus status)? -
@hidden for internal use only
@detail callback
@author songxiaomeng.19
@brief 音频 dump 状态改变回调
@param status 音频 dump 状态,参见 AudioDumpStatus{@link #AudioDumpStatus}
@note 本回调用于内部排查音质相关异常问题,开发者无需关注。
getter/setter pair
-
onAudioFramePlayStateChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, RtcUser user, FirstFramePlayState state)? -
@detail callback
@author wangjunzheng
@brief 音频首帧播放状态发生改变时,收到此回调。
@param streamId 流 ID
@param streamInfo 流信息,参看 StreamInfo{@link #StreamInfo}
@param user 用户信息,参看 RtcUser{@link #RtcUser}
@param state 首帧播放状态,详见 FirstFramePlayState{@link #FirstFramePlayState}
getter/setter pair
-
onAudioFrameSendStateChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, RtcUser user, FirstFrameSendState state)? -
@detail callback
@author wangjunzheng
@brief 本地音频首帧发送状态发生改变时,收到此回调。
@param streamId 流 ID
@param streamInfo 流信息,参看 StreamInfo{@link #StreamInfo}
@param user 用户信息,参看 RtcUser{@link #RtcUser}
@param state 首帧发送状态,详见 FirstFrameSendState{@link #FirstFrameSendState}
getter/setter pair
-
onAudioMixingPlayingProgress
↔ FutureOr<
void> Function(int mixId, int progress)? -
@detail callback
@author songxiaomeng.19
@brief 混音音频文件播放进度回调
@param mixId 混音 ID
@param progress 当前混音音频文件播放进度,单位毫秒
@note 调用 setAudioMixingProgressInterval 将时间间隔设为大于 0 的值后,或调用 startAudioMixing 将 AudioMixingConfig 中的时间间隔设为大于 0 的值后,SDK 会按照设置的时间间隔回调该事件。
getter/setter pair
-
onAudioPlaybackDeviceTestVolume
↔ FutureOr<
void> Function(int volume)? -
@detail callback
@author dixing
@brief 回调音频设备测试时的播放音量
@param volume 音频设备测试播放音量。取值范围:
0,255@note 调用 startAudioPlaybackDeviceTest{@link #IRTCAudioDeviceManager#startAudioPlaybackDeviceTest} 或 startAudioDeviceRecordTest{@link #IRTCAudioDeviceManager#startAudioDeviceRecordTest},开始播放音频文件或录音时,将开启该回调。本回调为周期性回调,回调周期由上述接口的interval参数指定。getter/setter pair -
onAudioRecordingStateUpdate
↔ FutureOr<
void> Function(AudioRecordingState state, AudioRecordingErrorCode errorCode)? -
@detail callback
@author huangshouqin
@brief 调用 startAudioRecording{@link #RTCEngine#startAudioRecording} 或 stopAudioRecording{@link #RTCEngine#stopAudioRecording} 改变音频文件录制状态时,收到此回调。
@param state 录制状态,参看 AudioRecordingState{@link #AudioRecordingState}
@param errorCode 录制错误码,参看 AudioRecordingErrorCode{@link #AudioRecordingErrorCode}
getter/setter pair
-
onAudioRouteChanged
↔ FutureOr<
void> Function(AudioRoute device)? -
@detail callback
@author dixing
@brief 音频播放路由变化时,收到该回调。
@param route 新的音频播放路由,详见 AudioRoute{@link #AudioRoute}
@note 插拔音频外设,或调用 setAudioRoute{@link #RTCEngine#setAudioRoute} 都可能触发音频路由切换,详见移动端设置音频路由 。
getter/setter pair
-
onCloudProxyConnected
↔ FutureOr<
void> Function(int interval)? -
@detail callback
@author daining.nemo
@brief 调用 startCloudProxy{@link #RTCEngine#startCloudProxy} 开启云代理,SDK 首次成功连接云代理服务器时,回调此事件。
@param interval 从开启云代理到连接成功经过的时间,单位为 ms
getter/setter pair
-
onConnectionStateChanged
↔ FutureOr<
void> Function(int state, int? reason)? -
@detail callback
@author hanchenchen.c
@brief 回调 SDK 与信令服务器连接状态相关事件。当 SDK 与信令服务器的网络连接状态改变时回调该事件。
@param state
当前 SDK 与信令服务器连接状态。 详细定义参见 ConnectionState{@link #ConnectionState} @param reason
引起信令服务器连接状态发生改变的原因,目前未启用固定为 -1 。 @note 更多信息参见 连接状态提示。getter/setter pair -
onEchoTestResult
↔ FutureOr<
void> Function(EchoTestResult result)? -
@detail callback
@region 网络管理
@author qipengxiang
@brief 关于音视频回路测试结果的回调。
@param result 测试结果,参看 EchoTestResult{@link #EchoTestResult}
@note 该回调触发的时机包括:
- 检测过程中采集设备发生错误时; - 检测成功后; - 非设备原因导致检测过程中未接收到音/视频回放,停止检测后。getter/setter pair -
onEffectError
↔ FutureOr<
void> Function(EffectErrorType error, String msg)? -
@hidden internal use only
@detail callback
@author wangqianqian.1104
@brief 当特效设置失败时,收到此回调。
@param error 特效错误类型。参看 EffectErrorType{@link #EffectErrorType}。
@param msg 错误信息。
getter/setter pair
-
onError
↔ FutureOr<
void> Function(ErrorCode code)? -
@detail callback
@author panjian.fishing
@brief 发生错误回调。
SDK 运行时出现了网络或媒体相关的错误,且无法自动恢复时触发此回调。
你可能需要干预. @param err 错误代码,详情定义见: ErrorCode{@link #ErrorCode}getter/setter pair -
onExperimentalCallback
↔ FutureOr<
void> Function(String param)? -
@hidden internal use only
@valid since 3.60.
@detail callback
@author hegangjie
@brief 试验性接口回调
@param param 回调内容(JSON string)
getter/setter pair
-
onExtensionAccessError
↔ FutureOr<
void> Function(String extensionName, String msg)? -
@valid since 3.52
@detail callback
@author zhanyunqiao
@brief 当访问插件失败时,收到此回调。
RTC SDK 将一些功能封装成插件。当使用这些功能时,如果插件不存在,功能将无法使用。 @param extensionName 插件名字 @param msg 失败说明getter/setter pair -
onExternalScreenFrameUpdate
↔ FutureOr<
void> Function(FrameUpdateInfo engine, FrameUpdateInfo? frameUpdateInfo)? -
@hidden
@detail callback
@author zhoubohui
@brief 外部采集时,调用 setOriginalScreenVideoInfo 设置屏幕或窗口大小改变前的分辨率后,若屏幕采集模式为智能模式,你将收到此回调,根据 RTC 智能决策合适的帧率和分辨率积(宽高)重新采集。
@param info RTC 智能决策后合适的帧率和分辨率积(宽高)。参看 FrameUpdateInfo{@link #FrameUpdateInfo}。
getter/setter pair
-
onFirstLocalAudioFrame
↔ FutureOr<
void> Function(dynamic audioSource)? -
@detail callback
@author zhangyuanyuan.0101
@brief 发布音频流时,采集到第一帧音频帧,收到该回调。
@param audioSource 预留参数
@note 如果发布音频流时,未开启本地音频采集,SDK 会推送静音帧,也会收到此回调。
getter/setter pair
-
onFirstLocalVideoFrameCaptured
↔ FutureOr<
void> Function(dynamic videoSource, VideoFrameInfo frameInfo)? -
@detail callback
@author zhangzhenyu.samuel
@brief RTC SDK 在本地完成第一帧视频帧或屏幕视频帧采集时,收到此回调。
@param videoSource 预留参数。
@param frameInfo 视频信息,参看 VideoFrameInfo{@link #VideoFrameInfo}
@note 对于采集到的本地视频帧,你可以调用 setLocalVideoCanvas{@link #RTCEngine#setLocalVideoCanvas} 或 setLocalVideoSink{@link #RTCEngine#setLocalVideoSink} 在本地渲染。
getter/setter pair
-
onFirstRemoteAudioFrame
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo)? -
@detail callback
@author zhangyuanyuan.0101
@brief 订阅端接收并解码远端音频流首帧时,收到此回调。包含以下情况:
1. 发布端发布音频,包含首次发布和取消后再次发布。
2. 发布端关闭音频采集后,再次打开采集。使用外部源时,停止推流后再次推流。
3. 发布端发布音频后,订阅端取消订阅音频后,又再次订阅音频。 @param streamId 远端流 ID @param streamInfo 远端流信息, 详见 StreamInfo{@link #StreamInfo} @note - 用户刚收到房间内订阅的每一路音频流时,都会收到该回调。 - 摄像头流、屏幕流,内部采集、外部源、自动订阅和手动订阅的音频流,都符合上述策略。getter/setter pair -
onFirstRemoteVideoFrameDecoded
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, VideoFrameInfo frameInfo)? -
@detail callback
@author zhushufan.ref
@brief 订阅端接收并解码远端视频流首帧时,收到此回调。包含以下情况:
1. 发布端发布视频,包含首次发布和取消后再次发布。
2. 发布端关闭视频采集后,再次打开采集。使用外部源时,停止推流后再次推流。
3. 发布端发布视频后,订阅端取消订阅视频后,又再次订阅视频。 @param streamId 远端流 ID @param streamInfo 远端流信息, 详见 StreamInfo{@link #StreamInfo} @param frameInfo 视频帧信息,参看 VideoFrameInfo{@link #VideoFrameInfo} @note - 用户刚收到房间内订阅的每一路视频流时,都会收到该回调。 - 摄像头流、屏幕流,内部采集、外部源,自动订阅和手动订阅的视频流,都符合上述策略。getter/setter pair -
onFirstRemoteVideoFrameRendered
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, VideoFrameInfo frameInfo)? -
@detail callback
@author zhushufan.ref
@brief SDK 内部渲染成功远端视频流首帧后,收到此回调。包含以下情况:
1. 发布端首次发布视频
2. 在 1 条件下,发布端取消发布视频后,再次发布视频
3. 在 1 条件下,发布端关闭视频采集后,再次打开采集(或使用外部源时,停止推流后再次推流)
4. 在 1 条件下,订阅端取消订阅视频后,再次订阅视频(调用接口包括 subscribeAllStreamsVideo{@link #RTCRoom-subscribeAllStreamsVideo},pauseAllSubscribedStreamVideo{@link #RTCRoom#pauseAllSubscribedStreamVideo}。 @param streamId 远端流 ID @param streamInfo 远端流信息, 详见 StreamInfo{@link #StreamInfo} @param frameInfo 视频帧信息,参看 VideoFrameInfo{@link #VideoFrameInfo} @note 仅在采用内部渲染时,符合上述策略。getter/setter pair -
onGetPeerOnlineStatus
↔ FutureOr<
void> Function(String peerUserId, UserOnlineStatus status)? -
@detail callback
@author hanchenchen.c
@brief 查询对端或本端用户登录状态的返回结果
@param peerUserId
需要查询的用户 ID @param status
查询的用户登录状态
详见 UserOnlineStatus{@link #UserOnlineStatus}. @note 必须先调用 getPeerOnlineStatus{@link #RTCEngine#getPeerOnlineStatus},才能收到此回调。getter/setter pair -
onHardwareEchoDetectionResult
↔ FutureOr<
void> Function(HardwareEchoDetectionResult result)? -
@detail callback
@author zhangcaining
@brief 通话前回声检测结果回调。
@param hardwareEchoDetectionResult 参见 HardwareEchoDetectionResult{@link #HardwareEchoDetectionResult}
@note
- 通话前调用 startHardwareEchoDetection{@link #RTCEngine#startHardwareEchoDetection} 后,将触发本回调返回检测结果。
- 建议在收到检测结果后,调用 stopHardwareEchoDetection{@link #RTCEngine#stopHardwareEchoDetection} 停止检测,释放对音频设备的占用。
- 如果 SDK 在通话中检测到回声,将通过 onAudioDeviceWarning{@link #IRTCEngineEventHandler#onAudioDeviceWarning} 回调
MEDIA_DEVICE_WARNING_DETECT_LEAK_ECHO。getter/setter pair -
onLicenseWillExpire
↔ FutureOr<
void> Function(int days)? -
@hidden internal use only
@detail callback
@author wangyu.1705
@brief license 过期时间提醒
@param days 即将过期剩余天数
getter/setter pair
-
onLocalAudioPropertiesReport
↔ FutureOr<
void> Function(List<LocalAudioPropertiesInfo> audioPropertiesInfos)? -
@detail callback
@author wangjunzheng
@brief 调用 enableAudioPropertiesReport{@link #RTCEngine#enableAudioPropertiesReport} 后,你会周期性地收到此回调,了解本地音频的瞬时相关信息。
本地音频包括使用 RTC SDK 内部机制采集的麦克风音频,屏幕音频和本地混音音频信息。 @param audioPropertiesInfos 本地音频信息,详见 LocalAudioPropertiesInfo{@link #LocalAudioPropertiesInfo} 。getter/setter pair -
onLocalAudioStateChanged
↔ FutureOr<
void> Function(dynamic audioSource, LocalAudioStreamState state, LocalAudioStreamError error)? -
@detail callback
@author zhangyuanyuan.0101
@brief 本地音频流的状态发生改变时,收到此回调。
@param audioSource 预留参数
@param state 本地音频设备的状态,详见 LocalAudioStreamState{@link #LocalAudioStreamState}
@param error 本地音频流状态改变时的错误码,详见 LocalAudioStreamError{@link #LocalAudioStreamError}
getter/setter pair
-
onLocalProxyStateChanged
↔ FutureOr<
void> Function(LocalProxyType localProxyType, LocalProxyState localProxyState, LocalProxyError localProxyError)? -
@detail callback
@author keshixing.rtc
@brief 本地代理状态发生改变回调。调用 setLocalProxy{@link #RTCEngine#setLocalProxy} 设置本地代理后,SDK 会触发此回调,通知代理连接的状态。
@param localProxyType 本地代理类型。参看 LocalProxyType{@link #LocalProxyType} 。
@param localProxyState 本地代理状态。参看 LocalProxyState{@link #LocalProxyState}。
@param localProxyError 本地代理错误。参看 LocalProxyError{@link #LocalProxyError}。
getter/setter pair
-
onLocalVideoSizeChanged
↔ FutureOr<
void> Function(dynamic videoSource, VideoFrameInfo frameInfo)? -
@detail callback
@author zhushufan.ref
@brief 本地预览视频大小或旋转信息发生改变时,收到此回调。
@param videoSource 预留参数。
@param frameInfo 视频帧信息,参看 VideoFrameInfo{@link #VideoFrameInfo}
getter/setter pair
-
onLocalVideoStateChanged
↔ FutureOr<
void> Function(dynamic videoSource, LocalVideoStreamState state, LocalVideoStreamError error)? -
@detail callback
@author shenpengliang
@brief 本地视频流的状态发生改变时,收到该事件。
@param videoSource 预留参数
@param state 本地视频流状态,参看 LocalVideoStreamState{@link #LocalVideoStreamState}
@param error 本地视频状态改变时的错误码,参看 LocalVideoStreamError{@link #LocalVideoStreamError}
getter/setter pair
-
onLoginResult
↔ FutureOr<
void> Function(String uid, LoginErrorCode errorCode, int elapsed)? -
@detail callback
@author hanchenchen.c
@brief 登录结果回调
@param uid
登录用户 ID @param errorCode
登录结果
详见 LoginErrorCode{@link #LoginErrorCode}。 @param elapsed
从调用 login{@link #RTCEngine#login} 接口开始到返回结果所用时长。
单位为 ms。 @note 调用 login{@link #RTCEngine#login} 后,会收到此回调。getter/setter pair -
onLogout
↔ FutureOr<
void> Function(LogoutReason reason)? -
@detail callback
@author hanchenchen.c
@brief 登出结果回调
@param reason 用户登出的原因,参看 LogoutReason{@link #LogoutReason}
@note 在以下两种情况下会收到此回调:调用 logout{@link #RTCEngine#logout} 接口主动退出;或其他用户以相同 UserId 进行
login导致本地用户被动登出。getter/setter pair -
onLogReport
↔ FutureOr<
void> Function(String logType, dynamic logContent)? -
@platform android
@detail callback
@author chenweiming.push
@brief 上报日志时回调该事件。
@param logType
日志类型。 @param logContent
日志内容。getter/setter pair -
onMixedStreamEvent
↔ FutureOr<
void> Function(MixedStreamTaskInfo info, MixedStreamTaskEvent event, MixedStreamTaskErrorCode error)? -
@valid since 3.60. 自 3.60 起,该回调替代了
onStreamMixingEvent和onPushPublicStreamResult方法来实现下述功能。如果你已升级至 3.60 及以上版本,并且仍在使用这两个方法,请迁移到此回调。 @detail callback @author lizheng @brief 合流转推 CDN / WTN 流状态回调 @param info 任务详情,参看 MixedStreamTaskInfo{@link #MixedStreamTaskInfo}。 @param event 任务事件,参看 MixedStreamTaskEvent{@link #MixedStreamTaskEvent}。 @param error 任务错误码,参看 MixedStreamTaskErrorCode{@link #MixedStreamTaskErrorCode}getter/setter pair -
onNetworkDetectionResult
↔ FutureOr<
void> Function(NetworkDetectionLinkType type, NetworkQuality quality, int rtt, double lostRate, int bitrate, int jitter)? -
@detail callback
@author hanchenchen.c
@brief 通话前网络探测结果。
成功调用 startNetworkDetection{@link #RTCEngine#startNetworkDetection} 接口开始探测后,会在 3s 内首次收到该回调,之后每 2s 收到一次该回调。 @param type 探测网络类型为上行/下行 @param quality 探测网络的质量,参看 NetworkQuality{@link #NetworkQuality}。 @param rtt 探测网络的 RTT,单位:ms @param lostRate 探测网络的丢包率 @param bitrate 探测网络的带宽,单位:kbps @param jitter 探测网络的抖动,单位:msgetter/setter pair -
onNetworkDetectionStopped
↔ FutureOr<
void> Function(NetworkDetectionStopReason reason)? -
@detail callback
@author hanchenchen.c
@brief 通话前网络探测结束
以下情况将停止探测并收到本一次本回调:
1. 当调用 stopNetworkDetection{@link #RTCEngine#stopNetworkDetection} 接口停止探测后,会收到一次该回调;
2. 当收到远端/本端音频首帧后,停止探测;
3. 当探测超过 3 分钟后,停止探测;
4. 当探测链路断开一定时间之后,停止探测。 @param reason
停止探测的原因类型,参考 NetworkDetectionStopReason{@link #NetworkDetectionStopReason}getter/setter pair -
onNetworkTimeSynchronized
↔ FutureOr<
void> Function()? -
@platform android
@detail callback
@author songxiaomeng.19
@brief 首次调用 getNetworkTimeInfo{@link #RTCEngine#getNetworkTimeInfo} 后,SDK 内部启动网络时间同步,同步完成时会触发此回调。
getter/setter pair
-
onNetworkTypeChanged
↔ FutureOr<
void> Function(NetworkType type)? -
@detail callback
@author hanchenchen.c
@brief SDK 当前网络连接类型改变回调。当 SDK 的当前网络连接类型发生改变时回调该事件。
@param type
网络类型。
- -1: 网络连接类型未知。 - 0: 网络连接已断开。 - 1: LAN - 2: Wi-Fi,包含热点 - 3: 2G 移动网络 - 4: 3G 移动网络 - 5: 4G 移动网络 - 6: 5G 移动网络getter/setter pair -
onPerformanceAlarms
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, PerformanceAlarmMode mode, PerformanceAlarmReason reason, SourceWantedData data)? -
@detail callback
@author panjian.fishing
@brief 本地未通过 setPublishFallbackOption{@link #RTCEngine#setPublishFallbackOption} 开启发布性能回退,检测到设备性能不足时,收到此回调。
本地通过 setPublishFallbackOption{@link #RTCEngine#setPublishFallbackOption} 开启发布性能回退,因设备性能/网络原因,造成发布性能回退/恢复时,收到此回调。 @param streamId 流 ID @param streamInfo 流信息,参看 StreamInfo{@link #StreamInfo} @param mode 指示本地是否开启发布回退功能。参看 PerformanceAlarmMode{@link #PerformanceAlarmMode}
- 当发布端未开启发布性能回退时,mode 值为 NORMAL。 - 当发布端开启发布性能回退时,mode 值为 SIMULCAST。 @param reason 告警原因,参看 PerformanceAlarmReason{@link #PerformanceAlarmReason} @param data 性能回退相关数据,详见 SourceWantedData{@link #SourceWantedData}。getter/setter pair -
onPushPublicStreamResult
↔ FutureOr<
void> Function(String roomId, String streamId, PublicStreamErrorCode errorCode)? -
@deprecated since 3.60, use onMixedStreamEvent{@link #IRTCEngineEventHandler#onMixedStreamEvent} instead.
@detail callback
@author qipengxiang
@brief WTN 流发布结果回调。
调用 startPushMixedStream{@link #RTCEngine#startPushMixedStream} 接口发布WTN 流后,启动结果通过此回调方法通知用户。 @param roomId 发布WTN 流的房间 ID @param publicStreamId WTN 流 ID @param error WTN 流发布结果状态码。详见 PublicStreamErrorCode{@link #PublicStreamErrorCode}。getter/setter pair -
onRecordingProgressUpdate
↔ FutureOr<
void> Function(dynamic videoSource, RecordingProgress process, RecordingInfo info)? -
@detail callback
@author wangzhanqiang
@brief 本地录制进度回调。
该回调由 startFileRecording{@link #RTCEngine#startFileRecording} 触发,录制状态正常时,系统每秒钟都会通过该回调提示录制进度。 @param videoSource 预留参数。 @param progress 录制进度,参看 RecordingProgress{@link #RecordingProgress} @param info 录制文件的详细信息,参看 RecordingInfo{@link #RecordingInfo}getter/setter pair -
onRecordingStateUpdate
↔ FutureOr<
void> Function(dynamic videoSource, RecordingState state, RecordingErrorCode errorCode, RecordingInfo info)? -
@detail callback
@author wangzhanqiang
@brief 获取本地录制状态回调。
该回调由 startFileRecording{@link #RTCEngine#startFileRecording} 或 stopFileRecording{@link #RTCEngine#stopFileRecording} 触发。 @param videoSource 预留参数。 @param state 录制状态,参看 RecordingState{@link #RecordingState} @param errorCode 录制错误码,参看 RecordingErrorCode{@link #RecordingErrorCode} @param info 录制文件的详细信息,参看 RecordingInfo{@link #RecordingInfo}getter/setter pair -
onRemoteAudioPropertiesReport
↔ FutureOr<
void> Function(List<RemoteAudioPropertiesInfo> audioPropertiesInfos, int totalRemoteVolume)? -
@detail callback
@author gongzhengduo
@brief 远端用户进房后,本地调用 enableAudioPropertiesReport{@link #RTCEngine#enableAudioPropertiesReport} ,根据设置的 interval 值,本地会周期性地收到此回调,了解订阅的远端用户的瞬时音频信息。
远端用户的音频包括使用 RTC SDK 内部机制/自定义机制采集的麦克风音频和屏幕音频。 @param audioPropertiesInfos 远端音频信息,其中包含音频流属性、房间 ID、用户 ID ,详见 RemoteAudioPropertiesInfo{@link #RemoteAudioPropertiesInfo}。 @param totalRemoteVolume 所有订阅的远端流混音后的音量,范围是0,255。
-0,25接近无声; -25,75为低音量; -76,204为中音量; -205,255为高音量。getter/setter pair -
onRemoteAudioPropertiesReportEx
↔ FutureOr<
void> Function(List<RemoteAudioPropertiesInfo> audioPropertiesInfos, int? totalRemoteVolume)? -
@hidden internal use only
@detail callback
@author lizheng
getter/setter pair
-
onRemoteAudioStateChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, RemoteAudioState state, RemoteAudioStateChangeReason reason)? -
@detail callback
@author zhangyuanyuan.0101
@brief 用户订阅来自远端的音频流状态发生改变时,会收到此回调,了解当前的远端音频流状态。
@param streamId 远端流 ID
@param streamInfo 远端流信息, 详见 StreamInfo{@link #StreamInfo}
@param state 远端音频流状态,详见 RemoteAudioState{@link #RemoteAudioState}
@param reason 远端音频流状态改变的原因,详见 RemoteAudioStateChangeReason{@link #RemoteAudioStateChangeReason}
getter/setter pair
-
onRemoteSnapshotTakenToFile
↔ FutureOr<
void> Function(String streamId, String filePath, int width, int height, SnapshotErrorCode errorCode, int taskId)? -
@detail callback
@valid since 3.60.
@brief 调用 takeRemoteSnapshotToFile{@link #RTCEngine#takeRemoteSnapshotToFile} 截取视频画面时,会收到此回调报告截图是否成功,以及截取的图片信息。
@param streamId 被截图的视频流 ID。
@param streamInfo 被截图的视频流信息,参看 StreamInfo{@link #StreamInfo}。
@param filePath 截图文件的保存路径。
@param width 截图图像的宽度。单位:像素。
@param height 截图图像的高度。单位:像素。
@param errorCode 截图错误码。参看 SnapshotErrorCode{@link #SnapshotErrorCode}。
@param taskId 截图任务的编号。和 takeRemoteSnapshotToFile{@link #RTCEngine#takeRemoteSnapshotToFile} 的返回值一致。
getter/setter pair
-
onRemoteVideoSizeChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, VideoFrameInfo frameInfo)? -
@detail callback
@author zhushufan.ref
@brief 远端视频大小或旋转信息发生改变时,房间内订阅此视频流的用户会收到此回调。
@param streamId 远端流 ID
@param streamInfo 远端流信息, 详见 StreamInfo{@link #StreamInfo}
@param frameInfo 视频帧信息,参看 VideoFrameInfo{@link #VideoFrameInfo}
getter/setter pair
-
onRemoteVideoStateChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, RemoteVideoState state, RemoteVideoStateChangeReason videoStateReason)? -
@detail callback
@author shenpengliang
@brief 远端视频流的状态发生改变时,房间内订阅此流的用户会收到该事件。
@param streamId 远端流 ID
@param streamInfo 远端流信息, 详见 StreamInfo{@link #StreamInfo}
@param videoState 远端视频流状态,参看 RemoteVideoState{@link #RemoteVideoState}
@param videoStateReason 远端视频流状态改变原因,参看 RemoteVideoStateChangeReason{@link #RemoteVideoStateChangeReason}
@note 本回调仅适用于主流,不适用于屏幕流。
getter/setter pair
-
onRemoteVideoSuperResolutionModeChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, VideoSuperResolutionMode mode, VideoSuperResolutionModeChangedReason reason)? -
@hidden for internal use only
@valid since 3.54
@detail callback
@author yinkaisheng
@brief 远端视频流的超分状态发生改变时,房间内订阅此流的用户会收到该回调。
@param streamId 远端流 ID
@param streamInfo 远端流信息, 详见 StreamInfo{@link #StreamInfo}
@param mode 超分模式,参看 VideoSuperResolutionMode{@link #VideoSuperResolutionMode}。
@param reason 超分模式改变原因,参看 VideoSuperResolutionModeChangedReason{@link #VideoSuperResolutionModeChangedReason}。
getter/setter pair
-
onSEIMessageReceived
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, Uint8List message)? -
@detail callback
@author wangzhanqiang
@brief 收到通过调用 sendSEIMessage{@link #RTCEngine#sendSEIMessage} 发送带有 SEI 消息的视频帧时,收到此回调。
@param streamId 包含 SEI 发送者的流 ID
@param streamInfo 包含 SEI 发送者的流信息, 详见 StreamInfo{@link #StreamInfo}
@param message 收到的 SEI 消息内容
getter/setter pair
-
onSEIStreamUpdate
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, SEIStreamUpdateEvent event)? -
@detail callback
@author wangzhanqiang
@brief 黑帧视频流发布状态回调。
在语音通话场景下,本地用户调用 sendSEIMessage{@link #RTCEngine#sendSEIMessage} 通过黑帧视频流发送 SEI 数据时,流的发送状态会通过该回调通知远端用户。
你可以通过此回调判断携带 SEI 数据的视频帧为黑帧,从而不对该视频帧进行渲染。 @param streamId 远端流 ID @param streamInfo 远端流信息,参看 StreamInfo{@link #StreamInfo}。 @param event 黑帧视频流状态,参看 SEIStreamUpdateEvent{@link #SEIStreamUpdateEvent}getter/setter pair -
onServerMessageSendResult
↔ FutureOr<
void> Function(int msgid, UserMessageSendResult error, Uint8List message)? -
@detail callback
@author hanchenchen.c
@brief 给应用服务器发送消息的回调。
@param msgid 本条消息的 ID
所有的 P2P 和 P2Server 消息共用一个 ID 序列。 @param error 消息发送结果,详见 UserMessageSendResult{@link #UserMessageSendResult}。 @param message 应用服务器收到 HTTP 请求后,在 ACK 中返回的信息。消息不超过 64 KB。 @note 本回调为异步回调。当调用 sendServerMessage{@link #RTCEngine#sendServerMessage} 或 sendServerBinaryMessage{@link #RTCEngine#sendServerBinaryMessage} 接口发送消息后,会收到此回调。getter/setter pair -
onServerParamsSetResult
↔ FutureOr<
void> Function(int error)? -
@detail callback
@author hanchenchen.c
@brief 设置应用服务器参数的返回结果
@param error
设置结果
- 返回 200,设置成功 - 返回其他,设置失败,详见 UserMessageSendResult{@link #UserMessageSendResult} @note 调用 setServerParams{@link #RTCEngine#setServerParams} 后,会收到此回调。getter/setter pair -
onSimulcastSubscribeFallback
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, RemoteStreamSwitch event)? -
@detail callback
@author wangfujun
@region 音视频回退
@brief 音视频流因网络环境变化等原因发生回退,或从回退中恢复时,触发该回调。
@param streamId 流 ID
@param streamInfo 流信息,参看 StreamInfo{@link #StreamInfo}
@param event 音视频流发生变化的信息。参看 RemoteStreamSwitch{@link #RemoteStreamSwitch}。
getter/setter pair
-
onSingleStreamEvent
↔ FutureOr<
void> Function(String taskId, SingleStreamTaskEvent event, SingleStreamTaskErrorCode error)? -
@valid since 3.60.
@detail callback
@author lizheng
@brief 单流转推 CDN 状态回调
@param taskId 任务 ID
@param event 任务状态, 参看 SingleStreamTaskEvent{@link #SingleStreamTaskEvent}
@param error 错误码,参看 SingleStreamTaskErrorCode{@link #SingleStreamTaskErrorCode}
getter/setter pair
-
onStreamSyncInfoReceived
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, SyncInfoStreamType streamType, Uint8List data)? -
@detail callback
@author wangjunzheng
@brief 音频流同步信息回调。可以通过此回调,在远端用户调用 sendStreamSyncInfo{@link #RTCEngine#sendStreamSyncInfo} 发送音频流同步消息后,收到远端发送的音频流同步信息。
@param streamId 远端流 ID
@param streamInfo 远端流信息,详见 StreamInfo{@link #StreamInfo}
@param streamType 媒体流类型,详见 SyncInfoStreamType{@link #SyncInfoStreamType}
@param data 消息内容。
getter/setter pair
-
onSysStats
↔ FutureOr<
void> Function(SysStats stats)? -
@detail callback
@author wangzhanqiang
@brief 每 2 秒发生回调,通知当前 cpu,内存使用的信息。
@param stats cpu,内存信息。详见 SysStats{@link #SysStats} 数据类型。
getter/setter pair
-
onUserBinaryMessageReceivedOutsideRoom
↔ FutureOr<
void> Function(int msgid, String uid, Uint8List message)? -
@detail callback
@author hanchenchen.c
@brief 收到房间外用户调用 sendUserBinaryMessageOutsideRoom{@link #RTCEngine#sendUserBinaryMessageOutsideRoom} 发来的二进制消息时,会收到此回调。
@param msgid 消息编号。
@param uid 消息发送者 ID。
@param message 收到的二进制消息内容。
getter/setter pair
-
onUserMessageReceivedOutsideRoom
↔ FutureOr<
void> Function(int msgid, String uid, String message)? -
@detail callback
@author hanchenchen.c
@brief 收到房间外用户调用 sendUserMessageOutsideRoom{@link #RTCEngine#sendUserMessageOutsideRoom} 发来的文本消息时,会收到此回调。
@param msgid 消息编号。
@param uid 消息发送者 ID。
@param message 收到的文本消息内容。
getter/setter pair
-
onUserMessageSendResultOutsideRoom
↔ FutureOr<
void> Function(int msgid, UserMessageSendResult error)? -
@detail callback
@author hanchenchen.c
@brief 给房间外指定的用户发送消息的结果回调。
当调用 sendUserMessageOutsideRoom{@link #RTCEngine#sendUserMessageOutsideRoom} 或 sendUserBinaryMessageOutsideRoom{@link #RTCEngine#sendUserBinaryMessageOutsideRoom} 发送消息后,会收到此回调。 @param msgid 消息 ID。
所有的 P2P 和 P2Server 消息共用一个 ID 序列。 @param error 消息发送结果。详见 UserMessageSendResult{@link #UserMessageSendResult}。getter/setter pair -
onUserStartAudioCapture
↔ FutureOr<
void> Function(String streamId, StreamInfo info)? -
@detail callback
@author dixing
@brief 房间内的用户调用 startAudioCapture{@link #RTCEngine#startAudioCapture} 开启音频采集时,房间内其他用户会收到此回调。
@param streamId 开启音频采集的远端流 ID
@param streamInfo 开启音频采集的远端流信息,详见 StreamInfo{@link #StreamInfo}
getter/setter pair
-
onUserStartVideoCapture
↔ FutureOr<
void> Function(String streamId, StreamInfo info)? -
@detail callback
@author liuyangyang
@brief 房间内的可见用户调用 startVideoCapture{@link #RTCEngine#startVideoCapture} 开启内部视频采集时,房间内其他用户会收到此回调。
@param streamId 视频流 ID
@param streamInfo 视频流信息,详见 StreamInfo{@link #StreamInfo}。
getter/setter pair
-
onUserStopAudioCapture
↔ FutureOr<
void> Function(String streamId, StreamInfo info)? -
@detail callback
@author dixing
@brief 房间内的用户调用 stopAudioCapture{@link #RTCEngine#stopAudioCapture} 关闭音频采集时,房间内其他用户会收到此回调。
@param streamId 流 ID
@param streamInfo 流信息,详见 StreamInfo{@link #StreamInfo}
getter/setter pair
-
onUserStopVideoCapture
↔ FutureOr<
void> Function(String streamId, StreamInfo info)? -
@detail callback
@author liuyangyang
@brief 房间内的可见用户调用 stopVideoCapture{@link #RTCEngine#stopVideoCapture} 关闭内部视频采集时,房间内其他用户会收到此回调。
若发布视频数据前未开启采集,房间内所有可见用户会收到此回调。 @param streamId 视频流 ID @param streamInfo 视频流信息,详见 StreamInfo{@link #StreamInfo}。getter/setter pair -
onVideoDenoiseModeChanged
↔ FutureOr<
void> Function(VideoDenoiseMode mode, VideoDenoiseModeChangedReason reason)? -
@hidden for internal use only
@valid since 3.54
@detail callback
@author Yujianli
@brief 降噪模式状态变更回调。当降噪模式的运行状态发生改变,SDK 会触发该回调,提示用户降噪模式改变后的运行状态及状态发生改变的原因。
@param mode 视频降噪模式,参看 VideoDenoiseMode{@link #VideoDenoiseMode}。
@param reason 视频降噪模式改变的原因,参看 VideoDenoiseModeChangedReason{@link #VideoDenoiseModeChangedReason}。
getter/setter pair
-
onVideoDeviceStateChanged
↔ FutureOr<
void> Function(String deviceId, VideoDeviceType deviceType, MediaDeviceState deviceState, MediaDeviceError deviceError)? -
@detail callback
@author liuyangyang
@brief 视频设备状态回调。提示摄像头视频采集、屏幕视频采集等媒体设备的状态。
@param deviceID 设备 ID
@param deviceType 设备类型,详见 VideoDeviceType{@link #VideoDeviceType}。
@param deviceState 设备状态,详见 MediaDeviceState{@link #MediaDeviceState}。
@param deviceError 设备错误类型,详见 MediaDeviceError{@link #MediaDeviceError}。
getter/setter pair
-
onVideoDeviceWarning
↔ FutureOr<
void> Function(String deviceId, VideoDeviceType deviceType, MediaDeviceWarning deviceWarning)? -
@detail callback
@author liuyangyang
@brief 视频设备警告回调,包括视频采集等设备。
@param deviceID 设备 ID
@param deviceType 参看 VideoDeviceType{@link #VideoDeviceType}
@param deviceWarning 参看 MediaDeviceWarning{@link #MediaDeviceWarning}
getter/setter pair
-
onVideoFramePlayStateChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, RtcUser user, FirstFramePlayState state)? -
@detail callback
@author wangfujun
@brief 远端视频流的首帧播放状态改变时,收到此回调。
@param streamId 流 ID
@param streamInfo 流信息,参看 StreamInfo{@link #StreamInfo}
@param user 用户信息,参看 RtcUser{@link #RtcUser}
@param state 首帧播放状态,详见 FirstFramePlayState{@link #FirstFramePlayState}
getter/setter pair
-
onVideoFrameSendStateChanged
↔ FutureOr<
void> Function(String streamId, StreamInfo streamInfo, RtcUser user, FirstFrameSendState state)? -
@detail callback
@author wangfujun
@brief 视频首帧发送状态发生改变时,收到此回调。
@param streamId 流 ID
@param streamInfo 流信息,参看 StreamInfo{@link #StreamInfo}
@param user 用户信息,参看 RtcUser{@link #RtcUser}
@param state 首帧发送状态,详见 FirstFrameSendState{@link #FirstFrameSendState}
getter/setter pair
-
onWarning
↔ FutureOr<
void> Function(WarningCode code)? -
@detail callback
@author panjian.fishing
@brief 发生警告回调。
SDK 运行时出现了警告。SDK 通常会自动恢复,警告信息可以忽略。 @param warn 警告代码,参见 WarningCode{@link #WarningCode}getter/setter pair - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited