EasyLiveExample - 视频直播示例源码

878
平台:Android
产品:实时语音、实时音视频、电商直播
更新时间:2023-12-08 17:10
版本号:1.0.1
Zego Developer
  • 音频
  • 视频
EasyLiveExample 演示了如何基于 ZEGO Express SDK 快速实现视频直播场景,代码简单易懂,您可以在首次开发应用时参考该源码。

预览

选择你想要的平台

参考文档

ZEGO Easy Live Example

EasyLiveExample 为开发者提供一站式服务,构建交互式直播流媒体体验。您可以使用 ZEGO 提供的音频效果、面部美颜等功能,创建单主播、多主播的直播会话。

使用 EasyLiveExample,用户可以创建直播间,用于主持、观看直播,邀请直播间的观众连麦等;观众可以发送短信与主播实时互动。

EasyLiveExample 可以覆盖的典型场景包括视频直播、在线课程直播、直播购物、电子商务、游戏直播等。

快速开始

在开始使用 EasyLiveExample 之前,请联系 ZEGO 技术支持,开通 EasyLiveExample(RTC + IM)服务权限。

前提条件

  • Android Studio 2020.3.1 或以上版本。
  • Android SDK 30、Android SDK Platform-Tools 30.x.x 或以上版本。
  • Android 4.1 或以上版本,且支持音视频的 Android 设备或模拟器(推荐使用真机),如果是真机,请开启“允许调试”选项。
  • 已在 ZEGO 控制台 创建项目,并申请有效的 AppID 和 AppSign,详情请参考 控制台 - 项目管理 中的“项目信息”。

修改项目配置

  1. 拷贝示例源码到本地。
  2. 打开终端,切换到源码项目所在路径。
  3. 执行 ./configure.sh 命令,然后输入 ZEGO 控制台 获取到的 AppID 和 AppSign,运行配置脚本。

注意:如果您使用的是 Windows 系统,请双击 configure.bat 运行配置脚本。

image.png

开始运行

  1. 在 Android Studio 中打开 EasyLiveExample 源码。
  2. 将 Android 设备链接到开发电脑,并开启“开发者模式”和“USB 调试”功能。
  3. 当 Android Studio 上方的 “Running Devices” 选项框选择到该设备时,单击 “Run” 按钮,编译并运行示例源码。

image.png

项目目录结构

示例源码项目中,包含两个模块:zegoliveapp

EasyLiveExample

EasyLiveExample 具备可重用性,并进一步封装了 RTC 和 IM SDK,助力开发者轻松集成使用。

目录路径:

{your_project_root_path}/live_android/zegolive/src/main/java/im/zego/live:
.
├── ZegoRoomManager.java               ------ Room 相关实例,用于初始化 SDK, 提供业务服务实现能力
├── ZegoZIMManager.java                ------ ZIM 实例
├── callback
├── constants
├── helper
├── http
├── listener
├── model
├── service             
│ ├── ZegoDeviceService.java                ------ 流、设备相关服务,例如推流、拉流、音视频配置 
│ ├── ZegoFaceBeautifyService.java          ------ 美颜
│ ├── ZegoMessageService.java               ------ 实时消息
│ ├── ZegoRoomListService.java              ------ 业务服务相关,例如房间列表更新,心跳等
│ ├── ZegoRoomService.java                  ------ 房间相关,例如进入/离开房间,更新房间信息等
│ ├── ZegoSoundEffectService.java           ------ 音效
│ └── ZegoUserService.java                  ------ 用户相关,例如上/下麦,开/关 麦克风/摄像头,连麦等
└── util

app

EasyLiveExample 实现了业务和 UI 交互逻辑,包括登录、房间列表、直播、美颜、音效等。

目录路径:

{your_project_root_path}/live_android/app/src/main/java/im/zego/live:
.
├── App.java               ------ 资源包,SDK 初始化等
├── base
├── constants
├── feature                ------ 核心功能业务逻辑 
│ ├── live                 ------ 直播间
│ ├── login                ------ 登录 
│ ├── room                 ------ 房间列表
│ ├── settings             ------ 设置
│ └── webview              ------ app 内的 view
├── helper                 ------ Utilities
└── view                   ------ 自定义 UI