zoukankan      html  css  js  c++  java
  • Android移动端音视频的快速开发教程(五)

    接  Android移动端音视频的快速开发教程(四)

    3.3.
    数据传输事件接口
    3.3.1.
    接口定义
    package com.bairuitech.anychat;
    // 数据传输通知接口
    public interface AnyChatTransDataEvent {
    public void OnAnyChatTransFile(int dwUserid, String FileName, String TempFilePath, int dwFileLength, int wParam, int lParam, int dwTaskId); 第 18 页 共 51 页
    AnyChat for Android SDK 开发手册 佰锐科技 版权所有
    public void OnAnyChatTransBuffer(int dwUserid, byte[] lpBuf, int dwLen);
    public void OnAnyChatTransBufferEx(int dwUserid, byte[] lpBuf, int dwLen, int wparam, int lparam, int taskid);
    public void OnAnyChatSDKFilterData(byte[] lpBuf, int dwLen);
    }
    3.3.2.
    收到文件传输数据事件
    public void OnAnyChatTransFile(int dwUserid, String FileName, String TempFilePath, int dwFileLength, int wParam, int lParam, int dwTaskId);
    参数:
    dwUserid: 用户ID,指示发送用户
    FileName: 文件名(含扩展名,不含路径)
    TempFilePath: 接收完成后,SDK保存在本地的临时文件(包含完整路径)
    dwFileLength: 文件总长度
    wParam: 附带参数1
    lParam: 附带参数2
    dwTaskId: 该文件所对应的任务编号
    说明:
    当收到其它用户使用“TransFile”方法发送的文件时,将会触发该接口,等同于回调函数:BRAC_TransFile_CallBack。
    特别提示:本SDK不会删除“lpTempFilePath”所指示的临时文件,上层应用在处理完毕后,需要主动删除该临时文件。
    3.3.3.
    收到透明通道数据事件
    public void OnAnyChatTransBuffer(int dwUserid, byte[] lpBuf, int dwLen);
    参数:
    dwUserid: 用户ID,指示发送用户
    lpBuf: 缓冲区地址
    dwLen: 缓冲区大小
    说明:
    第 19 页 共 51 页
    AnyChat for Android SDK 开发手册 佰锐科技 版权所有
    当收到其它用户使用“TransBuffer””方法发送的缓冲区数据时,将会触发该接口,等同于回调函数:BRAC_TransBuffer_CallBack。
    由于该函数传递的数据是一个与本SDK无关的缓冲区(由上层应用自己填充内容),相对于本SDK来说是透明的,故称为透明通道,利用该通道,可以向当前房间内的任何用户传输上层应用自定义的数据。
    3.3.4.
    收到扩展透明通道数据事件
    public void OnAnyChatTransBufferEx(int dwUserid, byte[] lpBuf, int dwLen, int wparam, int lparam, int taskid);
    参数:
    dwUserid: 用户ID,指示发送用户
    lpBuf: 缓冲区地址
    dwLen: 缓冲区大小
    wParam: 缓冲区附带参数(由发送者设置,上层应用可自定义用途)
    lParam: 缓冲区附带参数2
    dwTaskId: 该缓冲区所对应的传输任务编号
    说明:
    当收到其它用户使用“TransBufferEx”方法发送的缓冲区数据时,将会触发该接口,等同于回调函数:BRAC_TransBufferEx_CallBack。
    3.3.5.
    收到SDK Filter数据事件
    public void OnAnyChatSDKFilterData(byte[] lpBuf, int dwLen);
    参数:
    lpBuf: 缓冲区地址
    dwLen: 缓冲区大小
    说明:
    当收到服务器“SDK Filter”或是“Server SDK”相关接口发送的缓冲区数据时,将会触发该接口,等同于回调函数:BRAC_SDKFilterData_CallBack。

    3.4. 
    文字消息事件接口 
    3.4.1. 
    接口定义 
    package com.bairuitech.anychat; 
    // 文字聊天通知接口 
    public interface AnyChatTextMsgEvent { 
    public void OnAnyChatTextMessage(int dwFromUserid, int dwToUserid, int bSecret, String message); 

    3.4.2. 
    收到文字聊天消息事件 
    public void OnAnyChatTextMessage(int dwFromUserid, int dwToUserid, boolean bSecret, String message); 
    参数: 
    dwFromUserid 消息发送者用户ID 
    dwToUserid 目标用户,-1表示发送给大家,即房间所有人 
    bSecret 是否为悄悄话,当目标用户不为-1时有效 
    message 消息字符串 
    说明:当进入房间成功之后,收到其他用户发送的文字聊天信息时将触发该接口,等同于WIN32平台的回调函数:BRAC_TextMessage_CallBack。本地用户向其它用户发送文字消息时,将不会触发该接口。 
    3.5. 
    私聊控制事件接口 
    3.5.1. 
    接口定义 
    package com.bairuitech.anychat; 
    // AnyChat私聊消息通知接口 
    public interface AnyChatPrivateChatEvent { 
    public void OnAnyChatPrivateRequestMessage(int dwUserId, int dwRequestId); 第 21 页 共 51 页 
    AnyChat for Android SDK 开发手册 佰锐科技 版权所有 
    public void OnAnyChatPrivateEchoMessage(int dwUserId, int dwErrorCode); 
    public void OnAnyChatPrivateExitMessage(int dwUserId, int dwErrorCode); 

    3.5.2. 
    用户私聊请求事件 
    public void OnAnyChatPrivateRequestMessage(int dwUserId, int dwRequestId) 
    参数: 
    dwUserId 表示发起者的用户ID号,私聊请求者 
    dwRequestId 表示私聊请求编号,标识该请求 
    说明:当进入房间成功之后,当用户发起私聊请求时,在被请求者端将触发该接口,等同于WIN32平台的WM_GV_PRIVATEREQUEST消息。 
    3.5.3. 
    用户私聊回复事件 
    public void OnAnyChatPrivateEchoMessage(int dwUserId, int dwErrorCode) 
    参数: 
    dwUserId 表示回复者的用户ID号 
    dwErrorCode 返回代码,表示对方是否同意自己的邀请 
    说明:当进入房间成功之后,当用户发起私聊请求时,其它用户回复该请求时将触发该接口,等同于WIN32平台的WM_GV_PRIVATEECHO消息。 
    3.5.4. 
    用户私聊退出事件 
    public void OnAnyChatPrivateExitMessage(int dwUserId, int dwErrorCode) 
    参数: 
    dwUserId 表示退出者的用户ID号 
    dwErrorCode 返回代码,表示退出私聊的原因 
    说明:当进入房间成功之后,在自己私聊列表中的用户退出,或网络连接断开时将触发该接口,等同于WIN32平台的WM_GV_PRIVATEEXIT消息。

  • 相关阅读:
    第十五篇:在SOUI中消息通讯
    为GDI函数增加透明度处理
    第十四篇:在SOUI中使用定时器
    第十三篇:在SOUI中使用有窗口句柄的子窗口
    第十二篇:SOUI的utilities模块为什么要用DLL编译?
    第十一篇:SOUI系统资源管理
    第十篇:扩展SOUI的控件及绘图对象(ISkinObj)
    第九篇:在SOUI中使用多语言翻译
    第八篇:SOUI中控件事件的响应
    Linked List Cycle
  • 原文地址:https://www.cnblogs.com/ilscott/p/3142330.html
Copyright © 2011-2022 走看看