会见SDK文档

文章目录

  • Android_Paas_SDK ..
    • 1.Android SDK集成
    • 2. SDK 基本概念及集成
    • 4Websocket模块
    • 开发文档Android 5 .x(as)
    • 变更记录
    • 1. Android SDK集成
            • 本节主要介绍如何创建一个android应用,并集成SDK。
      • 1. 1 集成准备
      • 1. 2 支持版本
      • 1. 3 具体集成方案
      • 1. 4 支持手机cpu架构
    • 2. SDK 基本概念及集成
      • 2. 1 接口调用顺序
    • 接口使用流程
      • 2. 2 初始化Application
      • 2. 3 回调注册
      • 2. 4 发起会议
      • 2. 5 加入会议
      • 2. 6 加入会议(支持设置相机和⻨克⻛状态)
      • 2. 7 结束会议
      • 2. 8 新终端入会
      • 2. 9 终端离开
      • 2. 10 会议状态
      • 2. 11 适配相机旋转⻆度(针对于内置相机)
      • 2. 12 会议信息
      • 2. 13 参会人列表
      • 2. 14 配置项
        • 2. 14. 1 配置更多中的通讯录邀请功能
        • 2. 14. 2 配置通知栏中消息图标及消息提示
        • 2. 14. 3 配置终端加入/离开/结束会议消息提示
        • 2. 14. 4 配置结束/离开会议二次确认弹框提示
        • 2. 14. 5 配置直播功能
        • 2. 14. 6 配置录制功能
        • 2. 14. 7 配置聊天功能
        • 2. 14. 8 配置TV版本
        • 2. 14. 9 配置画廊模式下竖屏界面
        • 2. 14. 10 配置当前相机的旋转⻆度
        • 2. 14. 11 配置选看远端视频流大小
        • 2. 14. 12 配置统计信息
        • 2. 14. 13 配置log写文件
        • 2. 14. 14 配置离线参会人的邀请
        • 2. 14. 15 配置语音模式
        • 2. 14. 16 配置共享
          • 是否显示共享设置(手机有此功能)
          • 是否显示共享按钮:
        • 2. 14. 17 配置锁定会议功能
        • 2. 14. 18 配置本地采集方式&设置编解码
        • 2. 14. 19 PAD 如果出现视频倒转等,可配置如下
      • 2. 15 返回会议中
      • 2. 16 自定义共享水印
      • 2. 17 本地视频截取
      • 2. 18 设置签到地址
      • 2. 19 设置采集分辨率
      • 2. 20 设置终端名称
      • 2. 21 开始及停止屏幕共享
      • 2. 22 设置是否双屏异显及屏幕数量
    • 4 Websocket模块
          • Websocket 连接
          • Websocket 回调监听/移除
          • Websocket 回调接口
          • 错误码
          • Websocket 断开
          • 是否显示邀请振铃界面(默认false)
          • 收到邀请是否自动应答(自动入会)(默认false)
          • 收到邀请是否免打扰(不响铃不入会)(默认false)
          • app在后台时收到邀请需要配置项(app登录成功后 进入的 ⻚面,绝对路径)

Android_Paas_SDK …

开发文档Android .x(as)

变更记录

1.Android SDK集成

\qquad 1.1 集成准备
\qquad 1.2 支持版本
\qquad 1.3 具体集成方案
\qquad 1.4 支持手机cpu架构

2. SDK 基本概念及集成

\qquad 2.1 接口调用顺序
\qquad 2.2. 初始化Application
.\qquad 2.3 回调注册
\qquad 2.4. 发起会议
\qquad 2.5. 加入会议
\qquad 2.6. 加入会议(支持设置相机和⻨克⻛状态)
\qquad 2.7. 结束会议
\qquad 2.8 新终端入会
\qquad 2.9. 终端离开
\qquad 2.10. 会议状态
\qquad 2.11. 适配相机旋转⻆度(针对于内置相机)
\qquad 2.12 会议信息
\qquad 2.13 参会人列表
\qquad 2.14.配置项
\qquad\qquad 2.14.1配置更多中的通讯录邀请功能
\qquad\qquad 2.14.2配置通知栏中消息图标及消息提示
\qquad\qquad 2.14.3配置终端加入/离开/结束会议消息提示
\qquad\qquad 2.14.4 配置结束/离开会议二次确认弹框提示
\qquad\qquad 2.14.5配置直播功能
\qquad\qquad 2.14.6配置录制功能
\qquad\qquad 2.14.7配置聊天功能
\qquad\qquad 2.14.8配置TV版本
\qquad\qquad 2.14.9配置画廊模式下竖屏界面
\qquad\qquad 2.14.10配置当前相机的旋转⻆度
\qquad\qquad 2.14.11配置选看远端视频流大小
\qquad\qquad 2.14.12配置统计信息
\qquad\qquad 2.14.13配置log写文件
\qquad\qquad 2.14.14配置离线参会人的邀请
\qquad\qquad 2.14.15配置语音模式
\qquad\qquad 2.14.16配置共享
\qquad\qquad\qquad 2.14.17是否显示共享设置(手机有此功能)
\qquad\qquad\qquad 2.14.18是否显示共享按钮:
\qquad\qquad 2.14.17配置锁定会议功能
\qquad\qquad 2.14.18配置本地采集方式&设置编解码
\qquad\qquad 2.14.19PAD 如果出现视频倒转等,可配置如下
\qquad 2.15 返回会议中
\qquad 2.16自定义共享水印
\qquad 2.17 本地视频截取
\qquad 2.18 设置签到地址
\qquad 2.19. 设置采集分辨率
\qquad 2.20. 设置终端名称
\qquad 2.21 开始及停止屏幕共享
\qquad 2.22设置是否双屏异显及屏幕数量

4Websocket模块

\qquad Websocket 连接
\qquad Websocket 回调监听/移除
\qquad Websocket 回调接口
\qquad 错误码
\qquadWebsocket 断开
\qquad是否显示邀请振铃界面(默认false)
\qquad收到邀请是否自动应答(自动入会)(默认false)
\qquad收到邀请是否免打扰(不响铃不入会)(默认false)
\qquadapp在后台时收到邀请需要配置项(app登录成功后 进入的 ⻚面,绝对路径)

开发文档Android 5 .x(as)

变更记录

日期版本说明备注
2021.11302.14.16是否显示共享按钮:默认true显示
202204265.1.1修改ws模块
1会中⽀持研讨会消息推送功能
2 接⼝变更&新增
HuiJianSdk.getInstance().connectWS(Context context,WsParm wsParm);
HuiJianSdk.getInstance().disConnectWS();
添加监听
HuiJianSDKEvent.getInstance().addWsListener(WsListener listener);
移除监听
HuiJianSDKEvent.getInstance().removeWsListener(WsListener listener);
回调
voidOnReceiveWSMessage(String json);
void OnConnectWS(boolean isSuccess, interrorCode,String errorDesc);
是否显示邀请振铃界⾯>>
setShowInviteToMeetingUI(true)//默认false
邀请⾃动应答
HuiJianSdk.getInstance().setInviteToMeetingToAutoAnswer(true);
邀请免打扰
HuiJianSdk.getInstance().setInviteToMeetingToNotDisturb(true);

1. Android SDK集成

本节主要介绍如何创建一个android应用,并集成SDK。

1. 1 集成准备

获取SDK,
SRPaasSDK⽬录中包含lib/SRPAAS_Video_v5.x.x.aar;

1. 2 支持版本

SDK⽀持JDK1.6和Android SDK version 17以上的系统。

1. 3 具体集成方案

创建⼀个新⼯程,并在项⽬的build.gradle中添加以下内容:
注意:v7的版本需要在28版本以上;
注意:sdk的compileSdkVersion编译版本适配了Android 10系统,因此compileSdkVersion必须为29
注意:⽬前使⽤到了第三⽅库:com.squareup.okhttp3:okhttp:3.6.0;如果集成中出现冲突请与我们联

dependencies {
   implementation 'com.android.support:appcompat-v7:28.0.0'
   implementation 'com.android.support:design:28.0.0'//必须引⽤否则参会⼈
或者 共享图⽚会崩溃
   //implementation 'com.android.support:multidex:1.0.3'
  
   // 引⽤aar,测试集成aar
   implementation fileTree(include: ['*.jar'], dir: 'libs')
   implementation files('libs/srVideoLibHuijian202204271420.aar')
}

1. 4 支持手机cpu架构

会⻅sdk⽬前⽀持armeabi 和 armeabi-v7a 两种cpu架构;
注意:如果集成会⻅sdk的同时也引⽤了其他第三⽅不同的cpu架构,需要适配,指定ABI;
例如:
 ndk{          
         abiFilters 'armeabi','armeabi-v7a'
       }

2. SDK 基本概念及集成

2. 1 接口调用顺序

步骤对应函数说明备注
初始化ApplicationHuiJianSDKEvent:init必须初始化Application
Application 重写 onConfigurationChangedHuiJianSDKEvent: onConfigurationChan gedAppli cat i on必须重写 onConfigurationChan ged(Configuration newConfig)2.aar版本及以后增加 该方法,必须实现
初始化ListenerHuiJianSDKEvent: addMeetingListener,r emoveMeetingListen er设置回调,移除回调
开始会议HuiJianSdk: startMeeting启动一个新的会议
加入会议HuiJianSdk:joinMeeting加入正在开的会议
结束会议HuiJianSdk:endMeeting结束会议
新终端入会HuiJianSdk:onNewTermJoinCallBack新终端入会
终端离开MeetingListener:onTermLeaveCallBack终端离开回调
会议状态MeetingListener:onMeetingState会议状态回调
会议信息HuiJianSdk:getMeetingInfo获取会议信息
参会人列表HuiJianSdk:getParticipantInfoList获取参会人列表
返回会议中HuiJianSdk:onBacnMeeting适配Home键后台,再次返回到前台会议中
自定义共享水印HuiJianSdk:waterMark当有人共享时显示自定义水印

接口使用流程

在这里插入图片描述

2. 2 初始化Application

/**
*详⻅HuiJian_Android_Video_Plug_demo使⽤
*/
1. HuiJianSDKEvent.getInstance().init(this);(注意init初始化必须在OnCreate中
调⽤)
2. 重写onConfigurationChanged(Configuration newConfig)
 HuiJianSDKEvent.getInstance().onConfigurationChanged(newConfig);

2. 3 回调注册

/**
*详⻅HuiJian_Android_Video_Plug_demo使⽤
*/
 HuiJianSDKEvent.getInstance().addMeetingListener(this);
 HuiJianSDKEvent.getInstance().reMoveMeetingListener(this);

2. 4 发起会议

  /**
   * Context 上下⽂,启动video服务⽤的(不可以为空)
   * appId (appid为第三⽅集成时向北京凌壹科技有限公司申请的⼀个产品标识符,可通过web来申请)(不可
以为空)
   * secretKey(secretKey为第三⽅集成时向北京凌壹科技有限公司申请的)(不可以为空)
   * doMain 域名(不可以为空) 注:【 doMain格式:
   1.⽀持内外⽹版本:本地ip/域名,代理ip/域名,如:
http://192.168.61.39,https://huijian.suirui.com
   2.不⽀持内外⽹版本:只需本地ip/域名,如:https://huijian.suirui.com 】
   * uid ⽤户id,第三⽅⽤户唯⼀标识,数字即可,位数不限(不可以为空)
   * token 登录时获取的token值,(不可以为空)
   * nickName ⽤户昵称,⽤于显示在会议中的昵称(不可以为空)
   * confId 会议号(开始会议可以为"") 注:【 confId格式:
   1.⽀持内外⽹版本:会议号+@+企业名称,如:confId@suirui
   2.不⽀持内外⽹版本:会议号,如:confId 】
   * confPwd 会议密码(开始会议可以为"")
   */
   Context context=MainActivity.this;
   String appId = "beb7da4ced7c42a085c3c99697f9aa42";
   String secretKey = "beb7da4ced7c42a085c3c99697f9aa42";
   String doMain = "https://huijian.suirui.com";
   String confId = "";
   String nickName = "test";
   String uid = "1234";
   String token="";
   String confPwd = "";
   HuiJianSdk.getInstance().startMeeting(context, appId, secretKey,
doMain, uid,token, nickName, confId, confPwd);

2. 5 加入会议

/**
* Context 上下文,启动video服务用的(不可以为空)
* appId (appid为第三方集成时向北京凌壹科技有限公司申请的一个产品标识符,可通过web来申请)(不可
以为空)
* secretKey(secretKey为第三方集成时向北京凌壹科技有限公司申请的)(不可以为空)
* doMain 域名(不可以为空) 注:【 doMain格式:
1.支持内外网版本:本地ip/域名,代理ip/域名,如:
http://192.168.61.39,https://huijian.suirui.com
2.不支持内外网版本:只需本地ip/域名,如:https://huijian.suirui.com 】
* uid 用户id,第三方用户唯一标识,数字即可,位数不限(不可以为空)
* token 登录时获取的token值,(不可以为空)
* nickName 用户昵称,用于显示在会议中的昵称(不可以为空)
* confId 会议号(开始会议可以为"") 注:【 confId格式:
1.支持内外网版本:会议号+@+企业名称,如:confId@suirui
2.不支持内外网版本:会议号,如:confId 】
* confPwd 会议密码(开始会议可以为"")
*/
Context context=MainActivity.this;
String appId = "beb7da4ced7c42a085c3c99697f9aa42";
String secretKey = "beb7da4ced7c42a085c3c99697f9aa42";
String doMain = "https://huijian.suirui.com";
String confId = "";
String nickName = "test";
String uid = "1234";
String token="";
String confPwd = "";
HuiJianSdk.getInstance().startMeeting(context, appId, secretKey,
doMain, uid,token, nickName, confId, confPwd);

2. 6 加入会议(支持设置相机和⻨克⻛状态)

   /**
   * Context 上下⽂,启动video服务⽤的 (不可以为空)
   * appId (appid为第三⽅集成时向北京凌壹科技有限公司申请的⼀个产品标识符,可通过web来申请)(不可
以为空)
   * secretKey(secretKey为第三⽅集成时向北京凌壹科技有限公司申请的)(不可以为空)
   * doMain 域名(不可以为空) 注:【 doMain格式:
   1.⽀持内外⽹版本:本地ip/域名,代理ip/域名,如:
http://192.168.61.39,https://huijian.suirui.com
   2.不⽀持内外⽹版本:只需本地ip/域名,如:https://huijian.suirui.com 】
   * uid ⽤户id,第三⽅⽤户唯⼀标识,数字即可,位数不限(不可以为空)
   * token 登录时获取的token值,(不可以为空)
   * nickName ⽤户昵称,⽤于显示在会议中的昵称(不可以为空)
   * confId 会议号(不可以为空)注:【 confId格式:
   1.⽀持内外⽹版本:会议号+@+企业名称,如:confId@suirui
   2.不⽀持内外⽹版本:会议号,如:confId 】
   * confPwd 会议密码(可以为"")
   * isCameraOn:加⼊会议相机的状态;true:打开 false:关闭
   * isMute:加⼊会议⻨克⻛的状态;true:静⾳   false:⾮静⾳
   */
   Context context=MainActivity.this;
   String appId = "beb7da4ced7c42a085c3c99697f9aa42";
   String secretKey = "beb7da4ced7c42a085c3c99697f9aa42";
   String doMain = "https://huijian.suirui.com";
   String confId = "";
   String nickName = "test";
   String uid = "1234";
   String token="";
   String confPwd = "";
   boolean isCameraOn = true;
   boolean isMute = false;
   HuiJianSdk.getInstance().joinMeeting(context, appId, secretKey,
doMain, uid, token, nickName, confId,confPwd,isCameraOn,isMute);

2. 7 结束会议

/*
如果⽤户是当前会议的拥有者(即会议主持⼈),在调⽤该接⼝的时候会弹出提示窗⼝,请⽤户确认
是结束     会议还是离开会议,点击按钮后实现相应的离会或结束会议的功能
*Context 上下⽂,启动video服务⽤的 (不可以为空)
*/
 HuiJianSdk.getInstance().endMeeting(context);

2. 8 新终端入会

/*
*confId 会议号
*termInfo 参会⼈信息(uid,tername)
*/
@Override
public void onNewTermJoinCallBack(String confId, TermInfo termInfo) {
}

2. 9 终端离开

/*
*confId     会议号
*termInfo   参会⼈信息(uid,tername)
*srError   离开信息(getCur_error:离开状态码;getDetail_reason:离开信息;
getBrief_reason:离开信息)
*/
@Override
public void onTermLeaveCallBack(String confId, TermInfo termInfo, SRError
srError) {
}

2. 10 会议状态

/*
*confId 会议号
*code   状态码:【
       10000;//主持⼈不在会议
       10001;//会议不存在
       10002;//会议已结束
       10003;//会议已删除
       10004;//参会密码不正确
       10005;//临时账号资源紧张,请稍后再试
       10006;//不是⾃⼰的会议
       10007;//serviceid 为空
       10008;//会议ID为空
       10009;//thirdAudioId 必须是12位
       10010;//⽤户重复加⼊会议
       10011;//id3不存在
       10012;//version3不存在
       10013;//subject不存在
       10014;//不允许匿名加⼊会
       10015;//⽹关不存在
       10016;//⾮法设备
       10017;//⼊会失败
       10018;//获取apm认证mac信息失败
       10019;//⽹络异常,⼊会失败
       10020;//⼊会成功
       10021;//主持⼈结束会议
       10022;//本⼈退出会议
       10023;//获取版本信息时服务器连接失败
       10024;//初始化sdk失败
       10025;//本⼈被踢离开会议
       10026;//被主持⼈结束会议
       10027;//退出等候区】
*message 状态信息
*/
@Override
public void onMeetingState(String confId, int code, String message) {
    
}

2. 11 适配相机旋转⻆度(针对于内置相机)

/*
*cameraId 当前相机(0:后置摄像头;1:前置摄像头)
*screenRotation 当前⼿机屏幕⽅向 (0:横屏,1:竖屏,9:反向竖屏,8:反向横屏)
*注:相机切换和屏幕旋转时均会收到该消息,根据下⾯的【4.3 配置当前相机的旋转⻆度】进⾏设
置;
*原因:相机采集的图像是有⻆度的,且前置/后置相机采集的图像⻆度不⼀样,所以需要设置旋转的
⻆度,
*才能得到正确⽅向的视频图像
*/
@Override
public void onCameraRotation(int cameraId, int screenRotation){
    
}

2. 12 会议信息

/*
* errorCode 1001:未⼊会,获取失败
* Context 上下⽂,启动video服务⽤的 (不可以为空)
* info 会议信息(confId:会议号;confPwd:会议密码;startTime:开始时间;endTime:结束
时间;nickName:⽤户昵称;confSubject:会议主题)
* Context context=MainActivity.this;
*/
 HuiJianSdk.getInstance().getMeetingInfo(context, new
OnGetMeetingInfoListener() {
           @Override
           public void onFailed(int errorCode,String errorMsg) {
           }
           @Override
           public void onSuccess(ConferenceInfo conferenceInfo) {
              
           }
});

2. 13 参会人列表

/**
 * errorCode 1001:未⼊会,获取失败
 * Context 上下⽂,启动video服务⽤的 (不可以为空)
 * Participant 参会⼈信息(uid:⽤户id,第三⽅⽤户唯⼀标识; nickName:⽤户昵称)
 * Context context=MainActivity.this;
 */
HuiJianSdk.getInstance().getParticipantInfoList(context, new
OnGetParticipantInfoListener() {
           @Override
           public void onFailed(int errorCode,String errorMsg) {
                
           }
           @Override
           public void onSuccess(List<Participant> allMemberInfosList) {
              
           }
});

2. 14 配置项

2. 14. 1 配置更多中的通讯录邀请功能
1.如果需要⾸⻚更多⾥⾯的邀请功能,则需要通过以下配置:
  
   VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setInvite(false) //默认true 打开邀请功能 false去掉邀请功能
               .build();
   VideoPlugManage.getManager().init(videoConfiguration);
    
2.如果邀请功能设置为true时,则邀请界⾯需如下配置(注:该界⾯功能第三⽅⾃⾏配置)/**
* 更多中的邀请,跳转到⾃定义的xxxActivity界⾯,传递相关的会议参数,跳转(action)配置
⽂件(config.xml),并在AndroidManifest.xml中注册对应的⾃定义 xxxActivity;
*注意:com.suirui.huijian.meeting.invitnt是固定的不能更改;
*如下:
*/
config.xml(在values⽂件夹中添加)
<resources>
   <string
name="com.suirui.huijian.meeting.invitnt">xx.xx.xx.xxxActivity</string>
</resources>
AndroidManifest.xml
<activity android:name="xx.xx.xx.xxxActivity">
   <intent-filter>
   <action android:name="xx.xx.xx.xxxActivity" />
   <category android:name="android.intent.category.DEFAULT" />
   </intent-filter>
</activity>
/**
*在⾃定义的xxxActivity界⾯接收传递的参数
*confSubject   会议主题
*confId         会议号   注:【 1.⽀持内外⽹版本:会议号+@+企业名称,如:
confId@suirui
                               2.不⽀持内外⽹版本:会议号,如:confId 】
*confPwd       会议密码
*termId         终端id
*list           当前正在会议中的参会⼈列表
*/
Intent intent = this.getIntent();
if (intent != null) {
   Bundle bundle = intent.getExtras();
   if (bundle != null) {
     String confSubject =
bundle.getString(AndroidAppUtil.EXTRA_SUBJECT);
       String confId = bundle.getString(AndroidAppUtil.EXTRA_MEETING_ID);
       String confPwd =
bundle.getString(AndroidAppUtil.EXTRA_MEETING_PSW);
       int termId = bundle.getInt(AndroidAppUtil.MyPrivate.EXTRA_TERMID,
0);
       List<Participant> list = (List<Participant>)
bundle.getSerializable(AndroidAppUtil.EXTRA_PARTICIPANT_LIST);
   }
}
   
2. 14. 2 配置通知栏中消息图标及消息提示
 VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .notifyIcon(R.drawable.ic_launcher)//消息通知图标
               .notifAppName("会⻅")//消息提示
               .build();
 VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 3 配置终端加入/离开/结束会议消息提示
 VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setSRMessageAlert(false)//默认true:提示;false:不提示
               .build();
 VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 4 配置结束/离开会议二次确认弹框提示
 VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setSREndMeetingDialog(false)//默认true:显示退会弹框;false:
不显示退会弹框
               .build();
 VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 5 配置直播功能
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setSROnlive(false)//默认为true:显示直播按钮;false:不显示直播
按钮
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 6 配置录制功能
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setSRRecord(false)//默认为true:显示录制按钮;false:不显示录制
按钮
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 7 配置聊天功能
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setSRChat(false)//默认为true:显示聊天按钮;false:不显示聊天按.build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 8 配置TV版本
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setPlatformType(true)//默认false⼿机版本,true表示TV版本
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 9 配置画廊模式下竖屏界面
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setGalleryPort(false)//默认false:两⾏两列,true:四⾏⼀列
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 10 配置当前相机的旋转⻆度
/*
*cameraRotation 本地预览⻆度(竖屏cameraRotation=90 || cameraRotation=270;
*                           横屏cameraRotation=0 || cameraRotation=180)
*
*sdkCameraRotation 本地采集传给sdk的⽅向(竖屏sdkCameraRotation=0 ||
sdkCameraRotation=2;
*                                       横屏sdkCameraRotation=1 ||
sdkCameraRotation=3)
*
*/
                
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setCameraRotation(90, 2)//设置本地预览旋转90度,设置sdk视频⽅
向为2,竖屏;
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 11 配置选看远端视频流大小
/*
*SRPaas.VideoType.SR_CFG_VIDEO_SIZE_720P.getValue() 选看的⼤流,⽬前⽀持
720,360等;
*SRPaas.VideoType.SR_CFG_VIDEO_SIZE_180P.getValue() 选看的⼩流,⽬前⽀持
180,90等;
*/
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
                  
.setSelectType(SRPaas.VideoType.SR_CFG_VIDEO_SIZE_720P.getValue(),   
SRPaas.VideoType.SR_CFG_VIDEO_SIZE_180P.getValue())
                 .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 12 配置统计信息
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
                   .setSRStatisticInfo(false)// true:显示统计信息 false:隐
藏统计信息
                 .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 13 配置log写文件
/*
*⽬的:为了追踪集成sdk过程中,遇到的问题⽐如崩溃等,收集log⽂件,⽅便提供⽅追查问题
*/
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
                   .setSRFileLog(false)
                 .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 14 配置离线参会人的邀请
/**
*setSRParticipantsInvite(true):显示离线参会⼈的邀请按钮,同时邀请界⾯与【3.3 配
置邀请功能】介绍⼀样,需要⾃⼰去实现;
*setSRParticipantsInvite(false):隐藏离线参会⼈的邀请按钮
/
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
                   .setSRParticipantsInvite(false)
                 .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 15 配置语音模式
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
                   .setSRVoiceScene(false)// true:显示语⾳模式 false:隐藏语
⾳模式
                 .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 16 配置共享
是否显示共享设置(手机有此功能)
会中底部菜单栏点击共享按钮是否显示共享设置按钮(⼿机有此功能):
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
                 .setSRShareSet(false)// true:显示共享设置 false:隐藏共享设
置,默认false
                 .build();
VideoPlugManage.getManager().init(videoConfiguration);
是否显示共享按钮:
会中底部菜单栏是否显示共享按钮:
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
                 .setSRShare(true)//true:显示 false:不显示 默认true
                 .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 17 配置锁定会议功能
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setSRLockConference(false)//默认为true:显示锁定会议按钮;
false:不显示锁定会议按钮
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 18 配置本地采集方式&设置编解码
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               .setLocalCarmeraSvc(true)//true:⽀持svc流;false:默认false
               .setHardCodeDecode(true,true)//如果⽀持svc,设置⽀持的编解码均true,如果本地不⽀持svc⽆需设置此项
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
2. 14. 19 PAD 如果出现视频倒转等,可配置如下
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)
               //padconfig 本地预览0,sdk视频⽅向横屏;如果出现视频倒转等,可配
置如下
               .setCameraRotation(0, 1)
               .build();
       VideoPlugManage.getManager().init(videoConfiguration);

2. 15 返回会议中

/*
*适配有的⼿机在会议中home键后台了,再次启动app没有返回到会议中,
*以下⽅法返回true:表示返回到会议中,不加载当前的activity;详细使⽤请看demo
*/
 HuiJianSdk.getInstance().onBackMeeting(context);

2. 16 自定义共享水印

/**
 * ⾃定义共享⽔印
 * @param content ⽔印内容
 * */
HuiJianSDKEvent.getInstance().waterMark(Context context, String content);

2. 17 本地视频截取

/**
 * 本地视频截取
 * @return pathName 截图路径
 * */
HuiJianSDKEvent.getInstance().getLocalScreenShot();

2. 18 设置签到地址

/**
 * 设置签到地址
 * @param singinUrl 签到地址
 * */
HuiJianSDKEvent.getInstance().setSinginUrl(String singinUrl);

2. 19 设置采集分辨率

/**
 * 设置采集分辨率
 * @param width 宽
 * @param height ⾼
 * */
HuiJianSDKEvent.getInstance().setCameraCaptureSize(int width, int
height);

2. 20 设置终端名称

/**
 * 设置终端名称
 * @param terminalName 终端名称
 * */
HuiJianSdk.getInstance().setTerminalName(context, terminalName);

2. 21 开始及停止屏幕共享

/**
 * 开始屏幕共享/停⽌屏幕共享
 * @param isStart 是否开始,true-开始;false-停⽌
 * */
HuiJianSdk.getInstance().startOrStopSharing(context, isStart);

2. 22 设置是否双屏异显及屏幕数量

/**
 * 设置是否双屏异显及屏幕数量
 * @param isAsyncDisplay 是否异显
 * @param screenCount 屏幕数量
 * */
HuiJianSdk.getInstance().setScreenCount(Context context, boolean
isAsyncDisplay, int screenCount);
使⽤⽅式:设置屏幕的实际数量:
1⼊会之前需设置
2 屏幕插拔需设置

4 Websocket模块

Websocket 连接
HuiJianSdk.getInstance().connectWS(Context context,WsParm wsParm);
WsParm wsParm = new WsParm();
private String doMain;//必填 邀请⼊会时使⽤
private String wsUrl;//必填 示例:http://10.10.15.3 ws://10.10.15.3;
https://10.10.15.3 wss://10.10.15.3
private String port;//必填
private String suid;//必填
private String account;
private String token;//必填
private String nickName;//必填 邀请⼊会时使⽤
private String companyId;
Websocket 回调监听/移除
addWsListener(WsListener listener)
removeWsListener(WsListener listener)
添加监听
HuiJianSDKEvent.getInstance().addWsListener(WsListener listener);
移除监听
HuiJianSDKEvent.getInstance().removeWsListener(WsListener listener);
Websocket 回调接口
/**
     * @author xhwang
     * @createDate 2022/4/26 14:00
     * @description websocket 推送消息
     * @param json
     * @see
     * @return void
     */
   void OnReceiveWSMessage(String json);
   /**
     * @author xhwang
     * @createDate 2022/4/26 13:47
     * @description websocket 连接成功失败断开的状态
     * @param isSuccess
     * @param errorCode {@link SRRTCErrorCode}
     * @param errorDesc 错误描述
     * @see
     * @return void
     */
   void OnConnectWS(boolean isSuccess, int errorCode,String errorDesc);
错误码
public interface SRRTCErrorCode {
   final int SR_ERROR_INIT_SDK = -1;
   final int SR_ERROR_JOINROOM = 1001;//⼊会错误
   final int SR_ERROR_LEAVEROOM = 1002;//离开会议错误
   final int SR_ERROR_LOGIN = 1003;//登录错误
   final int SR_ERROR_CONNECTWS = 1004;//websocket 错误
   final int SR_ERROR_DISCONNECTWS = 1005;//websocket 错误
   final int SR_ERROR_REPEATJOINMEETING = 1006;//已经在会中,重复加⼊其他会议
错误
}
Websocket 断开
HuiJianSdk.getInstance().disConnectWS();
是否显示邀请振铃界面(默认false)
VideoConfiguration videoConfiguration = new
VideoConfiguration.VideoConfigBuilder(this)              
               //如需⾃⼰开发此UI界⾯,设置false,
               //⾃⼰实现此UI界⾯:OnReceiveWSMessage(String json)中检测到
"type":"InviteToMeeting" 时⾃⼰显示界⾯即可
               .setShowInviteToMeetingUI(true)//默认false
               .build();
VideoPlugManage.getManager().init(videoConfiguration);
收到邀请是否自动应答(自动入会)(默认false)
//邀请⾃动应答
HuiJianSdk.getInstance().setInviteToMeetingToAutoAnswer(true);
收到邀请是否免打扰(不响铃不入会)(默认false)
//邀请免打扰
HuiJianSdk.getInstance().setInviteToMeetingToNotDisturb(true);
app在后台时收到邀请需要配置项(app登录成功后 进入的 ⻚面,绝对路径)
位置 :res/values/config.xml
添加
<string
name="app_main_activity">org.suirui.huijian.hd.videodemo.MainActivity</st
ring>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木易 士心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值