本文介绍如何快速跑通示例源码,体验基础的音频/音视频通话服务。
请确保开发环境满足以下技术要求:
安装 Unreal Engine 4.25 或以上版本。您可以在 下载启动程序 下载 Epic Games Launcher,然后参考 安装虚幻引擎 安装您需要的 Unreal Engine 版本:
安装完成后,可根据需要配置选项:
根据示例代码需要运行到的平台,选择对应的开发环境或设备:
Unreal Engine 4.25 版本,与 M1 或以上系列处理器的 macOS 系统不兼容。
已在 ZEGO 控制台 创建项目,并申请有效的 AppID 和 AppSign,详情请参考 控制台 - 项目管理 中的“项目信息”。
SDK 同时也支持 Token 鉴权,若您需要升级鉴权方式,可参考 如何从 AppSign 鉴权升级为 Token 鉴权。
下列结构为工程目录的文件结构,下文所涉及的文件路径均为相对于此目录的路径。
.
├─ Config # Unreal 配置文件夹
│ ├─ DefaultEditor.ini # Unreal Engine Editor 默认配置
│ ├─ DefaultEngine.ini # Unreal Engine 默认配置
│ └─ DefaultGame.ini # Unreal Engine 游戏默认配置
├─ Content
│ └─ ZegoExpressExample # 关卡、蓝图文件
│ ├─ AdvancedAudioProcessing
│ │ └─ RangeAudio
│ │ ├─ BP_RangeAudio.uasset
│ │ └─ RangeAudioMap.umap
│ ├─ Blueprints
│ │ ├─ BP_MainWidget.uasset
│ │ ├─ BP_ZegoActor.uasset
│ │ ├─ BP_ZegoExpressExampleGameModeBase.uasset
│ │ ├─ BP_ZegoTileViewEntry.uasset
│ │ └─ ZegoUserWidgetEntry.uasset
│ ├─ MainMap.umap
│ └─ QuickStart
│ └─ CommonUsage
│ ├─ BP_CommonUsageWidget.uasset
│ └─ CommonUsageMap.umap
├─ Plugins # SDK 插件
|
├─ README.md
├─ README_zh.md
├─ Source # 源文件
│ ├─ ZegoExpressExample
│ │ ├─ AdvancedAudioProcessing
│ │ ├─ android_permission.xml
│ │ ├─ Config
│ │ ├─ EventHandler
│ │ ├─ KeyCenter.cpp # 填写申请的 AppID 和 AppSign
│ │ ├─ KeyCenter.h
│ │ ├─ LevelSwitchItem.cpp
│ │ ├─ LevelSwitchItem.h
│ │ ├─ QuickStart
│ │ ├─ Utils
│ │ ├─ ZegoActor.cpp
│ │ ├─ ZegoActor.h
│ │ ├─ ZegoExpressExample.Build.cs # build 文件
│ │ ├─ ZegoExpressExample.cpp
│ │ ├─ ZegoExpressExample.h
│ │ ├─ ZegoExpressExampleGameModeBase.cpp
│ │ ├─ ZegoExpressExampleGameModeBase.h
│ │ ├─ ZegoLevelScriptActor.cpp
│ │ ├─ ZegoLevelScriptActor.h
│ │ ├─ ZegoMainUserWidget.cpp
│ │ ├─ ZegoMainUserWidget.h
│ │ ├─ ZegoUserWidget.cpp
│ │ └─ ZegoUserWidget.h
│ ├─ ZegoExpressExample.Target.cs # target 文件
│ └─ ZegoExpressExampleEditor.Target.cs # editor target 文件
└─ ZegoExpressExample.uproject # Unreal 工程文件
下载的示例源码中缺少 SDK,需要先 下载 SDK,并解压。
请参考 集成 SDK 的 “导入 SDK”,将解压后的 SDK 包拷贝到工程的 “Plugins” 目录下,如下图所示:
修改 “/Source/KeyCenter.cpp” 文件,填写 SDK 初始化所需的 “AppID” 和 “AppSign”。请使用本文 前提条件 已获取的 AppID 和 AppSign 正确填写,否则示例源码无法正常运行。
打开工程。打开 Epic Games Laucher,选择编辑器版本,启动编辑器:
使用 Unreal Engine Editor 打开 “./ZegoExpressExample.uproject” 文件,首次打开会自动编译工程源码:
自动编译完成后,选择菜单 “编辑 > 插件”,确认勾选了 “ZegoExpressSDKPlugin” 文件:
开始运行。
请参考 设置 Android SDK 和 NDK,设置 Android 开发环境。
完成设置后,连接 Android 设备,打开 USB 调试功能,选择菜单 “平台 > 设备管理器”,确保设备已连接:
选择菜单 “平台 > 项目启动程序”,启动设备描述文件,开始运行。
选择菜单 “平台 > 打包设置”。
在左侧导航栏中选择 “iOS”,在 “Build” 选项中,勾选 “Automatic Signing”,并输入您的 “IOS团队ID”。
选择菜单 “平台 > iOS > 打包项目”。
在弹出的对话框中,双击打开 “Intermediate/ProjectFilesIOS” 目录下的 “ZegoExpressExample.xcodeproj” 工程。
连接 iOS 设备,使用 XCode 编译运行到设备。
选择菜单 “平台 > 项目启动程序”,启动设备描述文件。
选择菜单 “平台 > Mac > 打包项目”。
打包完成后,手动将插件中的 “libZegoExpressEngine.dylib” 库,拷贝到“Contents/MacOS”目录下:
双击打开 “Contents” 目录下的 “info.plist” 文件,使用 XCode 编辑,添加摄像头、麦克风权限:
双击运行打包好的 “ZegoExpressExample” 程序。
在 macOS 平台上,如果在 Unreal Engine Editor 中直接运行源码崩溃,需要给 Unreal Engine Editor 添加摄像头麦克风权限。
在上述文件中,添加摄像头麦克风权限:
在真机中运行项目,运行成功后,可以看到本端视频画面。
为方便体验,ZEGO 提供了一个 Web 端调试示例 ,在该页面下,输入相同的 AppID、RoomID,输入不同的 UserID、以及对应的 Token,即可加入同一房间与真机设备互通。当成功开始音视频通话时,可以听到远端的音频,看到远端的视频画面。
联系我们
文档反馈