互动白板
  • iOS
  • Android : Java
  • macOS
  • Windows
  • Web
  • Electron
  • 概述
  • 价格说明
  • 下载
  • 跑通示例源码
  • 接入指南
  • 快速开始
  • 场景实践
  • 客户端 API
  • 服务端 API
  • 常见错误码
  • 常见问题
  • 文档中心
  • 互动白板
  • 快速开始
  • 集成

集成

更新时间:2022-09-16 17:25

1 前提条件

  • 由于 ZegoWhiteboardView SDK 需要与 ZegoExpress-Video SDK(含白板功能)搭配使用,请同时集成 ZegoExpress-Video SDK(含白板功能),详情请参考实时音视频的 快速开始 - 集成

    • 互动白板 SDK 中已包含 ZegoExpress-Video SDK(含白板功能),无需单独下载。

    • 如已集成过 ZegoExpress-Video SDK,需要删除旧包并重新集成 互动白板 SDK 中获取的包,避免 ZegoExpress-Video SDK 和 ZegoWhiteboardView SDK 版本不匹配造成初始化失败。

  • 如果需要使用文件共享功能,请下载 ZegoDocsView SDK

  • 2 准备环境

    在开始集成 ZegoWhiteboardView SDK 前,请确保开发环境满足以下要求:

    • Android Studio 4.0 或以上版本。
    • Android 版本不低于 5.0 且支持音视频的 Android 设备。
    • Android 设备已经连接到 Internet。

    3 集成 SDK

    3.1 (可选)新建项目

    此步骤以如何创建新项目为例,如果是集成到已有项目,可忽略此步骤。
    1. 打开 Android Studio,选择菜单 “File > New > New Project”。

    2. 选择项目类型 “Empty Activity”。

    3. 选择项目存储路径。

    4. 单击 “Finish” 完成新工程创建。

    3.2 导入 SDK

    ZegoWhiteboardView SDK 基于 AndroidX 构建,因此被导入的项目也需要基于 AndroidX 构建。如果开发者的项目不满足该要求,请参考 迁移到 AndroidX 进行迁移。

    1. 请参考 下载 SDK 包 ,下载最新版本的 SDK。

    2. 解压下载的 SDK 文件,将 zegowhiteboardview.aar 文件拷贝到开发者的项目目录 “app/libs/” 文件夹下。

    3. 在 “app/build.gradle” 文件中的 dependencies 节点下添加以下代码:

      implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs')
    4. SDK 依赖以下模块,在 “app/build.gradle” 文件中的 dependencies 节点下添加以下代码:

      // 如果需要在纯java项目中集成,需要添加此依赖项
      implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.30" // 文档编写时最新版本为1.4.30

    4 设置权限

    添加权限声明,打开 "app/AndroidManifest.xml" 文件,添加如下内容:

        <!-- SDK 必须使用的权限 -->
        <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
        <uses-permission android:name="android.permission.INTERNET" />
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

    权限说明如下:

    权限 必要性 权限说明 需要理由
    INTERNET 必要权限 访问网络权限 SDK 基本功能都需在联网的情况下才可以使用。
    ACCESS_WIFI_STATE 必要权限 获取当前 WIFI 状态权限 SDK 会根据网络状态的改变执行不同的操作。如当网络重连的时候,SDK 内部会将网络断开时的状态都恢复,用户不需做额外的操作。
    ACCESS_NETWORK_STATE 必要权限 获取当前网络状态权限 SDK 会根据网络状态的改变执行不同的操作。如当网络重连的时候,SDK 内部会将网络断开时的状态都恢复,用户不需做额外的操作。
    WRITE_EXTERNAL_STORAGE 必要权限 内置 SD 卡写权限 若需要使用媒体播放器或音效播放器加载 Android 外部存储内的媒体资源文件,则需要申请此权限,否则 SDK 无法加载资源。
    READ_EXTERNAL_STORAGE 必要权限 内置 SD 卡读权限 SDK 会将日志和相关配置文件保存在内置 SD 卡内。

    5 防止代码混淆

    在 proguard-rules.pro 文件中,为 SDK 添加 -keep 类的配置,这样可以防止混淆 SDK 公共类名称。

    -keep class im.zego.zegowhiteboard.**{*;}
    本篇目录