3.2.
状态变化事件接口 状态变化事件接口定义在“AnyChatStateChgEvent.java”接口类中包含了SDK的用户视频设备状态、音频设备状态、用户聊天模式切换、P2P连接状态变化等异步事件的通知。 3.2.1. 接口定义 package com.bairuitech.anychat; // AnyChat状态变化事件通知接口 public interface AnyChatStateChgEvent { public void OnAnyChatMicStateChgMessage(INT UserId, boolean bOpenMic); public void OnAnyChatCameraStateChgMessage(INT UserId, INT State); public void OnAnyChatChatModeChgMessage(INT UserId, int bPublicChat); public void OnAnyChatActiveStateChgMessage(INT UserId, INT State); public void OnAnyChatP2PConnectStateMessage(INT UserId, INT State); } 第 16 页 共 51 页 AnyChat for Android SDK 开发手册 佰锐科技 版权所有 3.2.2. 音频设备状态改变事件 public void OnAnyChatMicStateChgMessage(int dwUserId, boolean bOpenMic) 参数: dwUserId 表示状态变化的用户ID bOpenMic 表示该用户是否已打开音频采集设备 说明:当进入房间成功之后,当用户使用API:UserSpeakControl操作本地音频设备时将会触发该接口,等同于WIN32平台的WM_GV_MICSTATECHANGE消息。 3.2.3. 视频设备状态改变事件 public void OnAnyChatCameraStateChgMessage(int dwUserId, int dwState) 参数: dwUserId 表示状态变化的用户ID dwState 表示该用户当前的视频设备状态: 0 没有摄像头设备 1 有摄像头设备,但没有打开 2 已打开摄像头设备 说明:当进入房间成功之后,当用户使用API:UserCameraControl操作本地视频设备时将会触发该接口,等同于WIN32平台的WM_GV_CAMERASTATE消息。 3.2.4. 用户聊天模式改变事件 public void OnAnyChatChatModeChgMessage(int dwUserId, boolean bPublicChat) 参数: dwUserId 表示状态变化的用户ID bPublicChat 表示该用户当前是否为公聊状态,否则为私聊状态: 说明:当进入房间成功之后,当用户改变聊天模式时将会触发该接口,等同于WIN32平台的WM_GV_CHATMODECHG消息。 第 17 页 共 51 页 AnyChat for Android SDK 开发手册 佰锐科技 版权所有 3.2.5. 用户P2P连接改变事件 public void OnAnyChatP2PConnectStateMessage(int dwUserId, int dwState) 参数: dwUserId 表示其它用户ID号 dwState 表示本地用户与其它用户的当前P2P网络连接状态: 0 没有任何连接 1 P2P连接成功,TCP连接 2 P2P连接成功,UDP连接 3 P2P连接成功,TCP与UDP连接 说明:当进入房间成功之后,与其它用户建立P2P连接,或是P2P连接被断开时触发该接口,等同于WIN32平台的WM_GV_P2PCONNECTSTATE消息。 3.2.6. 用户视频大小改变事件 public void OnAnyChatVideoSizeChgMessage(int dwUserId, int dwWidth, int dwHeight) 参数: dwUserId 表示状态变化的用户ID dwWidth 表示该用户当前的视频宽度 dwHeight 表示该用户当前的视频高度 说明:当进入房间成功之后,成功打开本地视频设备,或是修改视频设备采集分辨率之后将触发该接口,等同于WIN32平台的WM_GV_VIDEOSIZECHG消息。