# 跑通 API 示例项目 (/zh-CN/solutions/game-voice/get-started/run-example)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

<_PlatformTabsGroup>
<_PlatformProcessedMarker groupMode="structured" canonicalPlatform="unity" platform="unity" />
本文介绍如何跑通游戏语音使用的音频 SDK 配套的 API 示例项目，体验实时音频互动：

<Cards>
  <Card title={<RepositoryCardTitle provider="gitee">API-Examples</RepositoryCardTitle>} href="https://gitee.com/agoraio-community/Agora-Unity-Quickstart/tree/main/API-Example-Unity/Assets/API-Example/Examples" />
  <Card title={<RepositoryCardTitle provider="github">API-Examples</RepositoryCardTitle>} href="https://github.com/AgoraIO-Extensions/Agora-Unity-Quickstart/tree/main/API-Example-Unity" />
</Cards>

## 前提条件 [#前提条件]

- 已下载 [Unity Hub](https://unity.com/download)。

- Unity 2018.4.0 或以上版本。

- 一个 Unity 项目，你可以参考 [Unity 官方文档](https://docs.unity3d.com/2018.2/Documentation/Manual/GettingStarted.html)来创建一个项目。

- 操作系统与编译器要求：

  | 开发平台 | 操作系统版本       | 编译器版本                          |
  | :------- | :----------------- | :---------------------------------- |
  | Android  | Android 4.1 或以上 | Android Studio 3.0 或以上           |
  | iOS      | iOS 9.0 或以上     | Xcode 9.0 或以上                    |
  | macOS    | macOS 10.10 或以上 | Xcode 9.0 或以上                    |
  | Windows  | Windows 7 或以上   | Microsoft Visual Studio 2017 或以上 |

- 计算机可以访问互联网。请确保你的网络环境未部署防火墙，否则可能无法正常使用声网服务。

- 一个有效的声网账号以及声网项目。请参考[开通游戏语音服务](/zh-CN/solutions/game-voice/build/enable-service)从声网控制台获得以下信息：

  - App ID：声网随机生成的字符串，用于识别你的项目。
  - 临时 Token：Token 也称为动态密钥，在客户端加入频道时对用户鉴权。临时 Token 的有效期为 24 小时。

## 操作步骤 [#操作步骤]

### 获取示例项目 [#获取示例项目]

1. 你可以通过本文开头的 API 示例项目链接或通过[下载](/zh-CN/solutions/game-voice/reference/downloads)最新版的 Unity SDK 来获取示例项目。获取后，你会看到一个 `.unitypackage` 文件。

2. 点击 `.unitypackage` 文件，会弹出一个 **Import Unity Package** 窗口，点击右下角的 **Import** 按钮把 Unity SDK 导入到你的 Unity 项目中。导入完成后，你可以在 **Project** 面板看到 `Agora-RTC-PLUGIN` 文件夹。

   ![Import Unity Package 窗口示意图](https://web-cdn.agora.io/docs-files/1691052920319)

### 配置示例项目 [#配置示例项目]

<DocsImage alt="AppIdInput.asset 配置界面示意图" src="https://web-cdn.agora.io/docs-files/1692327313057" displayHeight="300px" />

### 编译并运行示例项目 [#编译并运行示例项目]

`API-Example` 文件夹下包含 `Basic` 和 `Advanced` 两个文件夹，分别提供声网 Unity SDK 的基础和进阶使用示例（如下图所示）。

<DocsImage alt="API-Example 文件夹列表" src="https://web-cdn.agora.io/docs-files/1691054049527" displayHeight="320px" />

你可以邀请一位朋友使用另一台设备一起运行该示例项目（需确保 App ID、临时 Token 和频道名与你配置示例项目时填入的一致）。此处以你和朋友进行音频通话为例：你们选择 `Basic` 文件夹下的 `JoinChannelAudio` 场景，点击 **Play** 进行编译。编译成功后，你们可以体验音频通话。
<_PlatformProcessedMarker close="true" />

<_PlatformProcessedMarker groupMode="structured" canonicalPlatform="unity" platform="unreal" />
本文介绍如何跑通游戏语音使用的音频 SDK 配套的 API 示例项目，体验实时音频互动：

<Cards>
  <Card title="Unreal Example" href="https://github.com/AgoraIO-Extensions/Agora-Unreal-RTC-SDK/tree/main/Agora-Unreal-SDK-CPP-Example" />
</Cards>

## 前提条件 [#前提条件-1]

- [Unreal Engine](https://www.unrealengine.com/zh-CN/download) 4.27 及以上版本
- 两台设备，不可使用虚拟机。参考下方列出的 Unreal Engine 官方文档，根据你的目标平台和引擎版本准备开发环境：
  | 开发平台 | 参考文档  | 备注    |
  | :--- | :------ | :------------------------------ |
  | Android  | [Android 开发环境要求](https://dev.epicgames.com/documentation/zh-cn/unreal-engine/android-development-requirements?application_version=4.27) | 无    |
  | iOS | [iOS 开发环境要求](https://dev.epicgames.com/documentation/zh-cn/unreal-engine/ios-and-tvos-development-requirements?application_version=4.27) | 有效的 Apple 开发者签名。  |
  | macOS | [macOS 开发环境要求](https://dev.epicgames.com/documentation/zh-cn/unreal-engine/hardware-and-software-specifications?application_version=4.27) | 有效的 Apple 开发者签名。  |
  | Windows | [Windows 开发环境要求](https://dev.epicgames.com/documentation/zh-cn/unreal-engine/hardware-and-software-specifications?application_version=4.27) | 32 位 Windows 仅支持 Unreal Engine 4 及以下版本，你需要在 `AgoraPluginLibrary.Build.cs` 文件中将 Windows 32 相关的代码取消注释。 |
- 可以访问互联网的计算机。如果你的网络环境部署了防火墙，参考[应对防火墙限制](/zh-CN/realtime-media/rtc/build/setup-and-access/firewall)以正常使用声网服务。
- 一个有效的声网账号以及声网项目。请参考[开通 RTC 服务](/zh-CN/realtime-media/rtc/build/setup-and-access/enable-service)从声网控制台获得以下信息：
    - App ID：声网随机生成的字符串，用于识别你的项目。
    - 临时 Token：Token 也称为动态密钥，在客户端加入频道时对用户鉴权。临时 Token 的有效期为 24 小时。
    - 频道名：用于标识频道的字符串。

## 操作步骤 [#操作步骤-1]

### 获取示例项目 [#获取示例项目-1]

1. 运行以下命令克隆仓库到本地：

    ```shell
    git clone git@github.com:AgoraIO-Extensions/Agora-Unreal-RTC-SDK.git
    ```

2. 示例项目中包含如下：

    | 路径                        | 描述                           |
    |:---------------------------|:-------------------------------|
    | `/Agora-Unreal-SDK-CPP-Example/Content/API-Example/Basic`     | 基础功能 API 示例。 |
    | `/Agora-Unreal-SDK-CPP-Example/Content/API-Example/Advance`   | 进阶功能 API 示例。 |

### 配置示例项目 [#配置示例项目-1]

参考以下步骤集成声网实时互动 Unreal SDK：

1. 前往[下载](/zh-CN/solutions/game-voice/reference/downloads)下载最新版本的 Unreal 视频 SDK，并解压缩。
2. 在 `/Agora-Unreal-SDK-CPP-Example` 路径下，创建名为 `Plugins` 的文件夹。
3. 将 Unreal SDK 文件夹中的 `AgoraPlugin` 拷贝到 `Plugins` 中。

### 编译并运行示例项目 [#编译并运行示例项目-1]

在 **Unreal Editor** 中，你可以在主关卡中编译并运行示例项目。

1. 在 C++ API 示例的路径下，双击 `AgoraExample.uproject` 打开项目。

2. 双击 **MainLevel**，然后点击 <InlineImage alt="编译按钮" src="https://web-cdn.agora.io/docs-files/1690867946685" width={25} /> 编译并运行示例项目。

3. 以 Windows 为例，运行成功后，你会看到如下界面，在文本框中填入你从控制台获取的 App ID、临时 Token 以及生成 Token 时使用的频道名。

![](https://web-cdn.agora.io/docs-portal/img/rtc/unreal-cpp-demo-main-level-01.png)

4. 此时，你可以点击左侧按钮，从主关卡导航到 API 示例的子关卡，体验指定的场景。以 **BasicAudioCallScene** 为例，点击 **JoinChannel** 加入频道。邀请一位朋友通过另一台设备来使用相同的 App ID、频道名和 Token 加入频道。你们可以体验音频通话。
<_PlatformProcessedMarker close="true" />
</_PlatformTabsGroup>
