文档中心
Old_Live_Room 互动视频
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 互动视频
  • 快速开始
  • 初始化

初始化

更新时间:2023-09-15 18:26

1 功能简介

集成 SDK 完成后,要想使用 SDK 的功能,还需要对 SDK 进行初始化操作。

2 使用步骤

2.1 申请 AppID 与 AppSign

请在 ZEGO 控制台 申请 SDK 初始化需要的 AppID 和 AppSign,获取 AppID 和 AppSign 指引 。

2.2 检测设备可用性

在windows上因为设备不可用的问题可能会导致不能正常使用推流功能,所以需要先检测一下用户当前的设备是否能正常运行。检测方法查看 设备管理 - 可用性检测。

2.3 导入 SDK 头文件

导入SDK初始化的头文件:

#include "LiveRoom.h"

2.4 设置测试环境

  • 针对 2021-11-16 及之前在 ZEGO 控制台 创建的项目:

    • 从控制台申请的 AppID 和 AppSign 等信息默认是测试环境,需要在初始化 SDK 前设置测试环境,否则 SDK 会初始化失败。应用正式上线前,请向 ZEGO 商务人员申请开启正式环境。
    • SetUseTestEnv 接口中的 “bTestEnv” 参数设置为 “true” 时表示使用测试环境;为 “false” 时表示使用正式环境。
  • 针对 2021-11-16 之后在 ZEGO 控制台 创建的项目:

    • 控制台分配的 AppID 和 AppSign 等信息都为正式环境。
    • SetUseTestEnv 接口中的 “bTestEnv” 参数取值必须修改为 “false”,表示使用正式环境。

示例代码如下:

// 当 App 集成完成后,再向 ZEGO 申请正式环境。
LIVEROOM::SetUseTestEnv(true); // 为 true 则说明开启测试环境,为 false 则说明使用正式环境

2.5 初始化 SDK

请注意:

  1. AppID 和 AppSign 由 ZEGO 分配给各 App。为了安全考虑,建议将 AppSign 存储在 App 的业务后台,使用时从后台获取。
  2. 调用 InitSDK 时,需要先将获取的 AppID 由字符串转为无符号整型数,AppSign 由字符串转为字节数组。

核心代码片段示例如下:


/** 初始化SDK
 *  g_dwAppID2 是获取的字符串 AppID 转换成的无符号整型数
 *  g_bufSignKey2 是获取的字符串 AppSign 转换成的字节数组
 */
LIVEROOM::InitSDK(g_dwAppID2, g_bufSignKey2, 32);

除上述设置之外,用户可根据需求,判断是否需要在初始化 SDK 同时, 开启其他功能。例如:外部渲染、外部采集、外部滤镜、软硬件编解码、开启流量控制等。

处理初始化回调

    class MyAvSignal : public IRoomCallback
    {
        //.....

        void OnInitSDK(int nError) override
        {
            if(nError == 0) 
            {
                //初始化sdk完成。
            }
            else
            {
                // nError 非0 代表初始化sdk失败
                // 具体错误码说明请查看<a> https://doc.zego.im/CN/5526.html </a>
            }
        }
    }

当收到void OnInitSDK(int nError)的回调后,nError为0表示初始化完成。

初始化完成后,开发者即可调用 SDK 相关接口,实现对应功能。

初始化 SDK 错误码

2.6 释放 SDK

开发者如果不需要再继续使用 SDK 可以调用如下函数释放 SDK。
注意:释放 SDK 后需要重新初始化 SDK 才能使用。

  • 接口原型:

    ZEGO_API bool ZEGO::LIVEROOM::UnInitSDK()

3 SDK接入注意事项(必看)

请开发者注意,SDK的每个回调都在一个独立且唯一工作线程中抛出(下面称为SDK主线程),开发者接收到回调之后务必需要切换线程,不能在SDK回调里再调用SDK的其它接口函数(需要切线程之后才能调),保证不阻塞SDK主线程。否则,可能会发生SDK主线程卡死等异常问题。

4 API 参考列表

方法 描述
ZEGO::LIVEROOM::InitSDK 初始化 SDK
ZEGO::LIVEROOM::SetUseTestEnv 测试环境开关
ZEGO::LIVEROOM::SetVerbose 打开调试信息开关
ZEGO::LIVEROOM::UnInitSDK 释放 SDK

5 相关文档

完成了初始化 SDK 的操作后,可以使用 ZEGO SDK 依次完成如下功能来实现基础的通话或者直播。

  • 快速开始-登录房间
  • 快速开始-推流
  • 快速开始-拉流
本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈