# Unity Remote

> Use Unity Remote to view your application on a device without creating a build. Supported on Android, iOS, and tvOS devices.

Unity Remote 是可下载的应用程序，用于辅助 Android、iOS 和 tvOS 的开发工作。Unity Remote 将目标设备连接到 Unity 编辑器，并将编辑器中的视觉输出以较低帧率显示在目标设备的屏幕上。同时，它会将目标设备的实时输入反馈到 Unity 编辑器中正在运行的项目里。通过这种方式，可在不进行构建的情况下，直观地了解应用程序在目标设备上的显示效果和交互表现。

目标设备将以下输入数据串流回 Unity 编辑器：

* 触摸和触笔输入
* 加速度计
* 陀螺仪
* 设备相机流
* 指南针
* GPS
* 手柄名称及输入数据

Unity 编辑器仍然会在桌面计算机上执行应用程序的实际处理。因此，应用程序在编辑器中的表现并不代表最终构建版本在目标设备上的实际性能表现。如果需要更准确地评估应用程序的性能，请构建并部署到目标设备上进行测试。此外，由于 Unity 编辑器中处理应用程序时，[目标平台](/engine/6000.0/manual/unity-editor/editor-features/build-settings.md.md)会与你在编辑器中设置的平台保持一致。因此它可能不会自动匹配运行 Unity Remote 的设备平台。这一点非常重要，尤其是当你使用[平台相关编译](/engine/6000.0/manual/platform-dependent-compilation.md.md)来根据目标平台（如桌面或移动设备）读取不同的输入时。如果需要使用该功能，请确保将目标平台设置为 Unity Remote 所运行的平台。

## 要求和兼容性

Unity Remote 支持 Android、iOS 和 tvOS 设备。要使 Unity Remote 连接到 Android 设备，必须在开发计算机上安装 Android SDK。有关更多信息，请参阅 [Android 环境设置](/engine/6000.0/manual/platform-specific/android/getting-started/sdksetup.md)。

**注意**：Unity Remote 取代了 Unity 早期版本的 iOS Remote 和 Android Remote 应用程序。Unity 不再支持这些较旧的应用程序。

## 设置 Unity Remote

要设置 Unity Remote：

1. 在目标设备上安装 Unity Remote。
2. 设置目标设备和计算机之间的 USB 连接。
3. 将 Unity 编辑器连接到 Unity Remote。

### 安装 Unity Remote

从 [Google Play](https://play.google.com/store/apps/details?id=com.unity3d.mobileremote) 下载 Unity Remote 应用程序。

### 设置 USB 连接

将目标设备连接到计算机之前，请在目标设备上启用 USB 调试。有关如何执行此操作的信息，请参阅[在 Android 设备上调试](/engine/6000.0/manual/platform-specific/android/developing/testing-and-debugging/debugging-on-an-android-device.md)。启用 USB 调试后，运行 Unity Remote，然后通过 USB 连接将目标设备连接到计算机。

### 将 Unity Remote 连接到 Unity 编辑器

将目标设备连接到计算机后，Unity 编辑器应该能够检测到该设备。要将目标设备上的 Unity Remote 连接到 Unity 编辑器：

1. 在[编辑器设置](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-editor-manager.md)（菜单：**编辑 (Edit)** > **项目设置 (Project Settings)** > **编辑器 (Editor)**）。
2. 在 **Unity Remote** 部分中，将 **Device** 设置为要使用的设备。

如果 **Device** 列表不包含目标设备，请首先断开连接并重新连接目标设备。如果此方法无效，请确保 USB 连接设置正确。为了测试这一点，您可以构建并运行应用程序，以检查 Unity 是否能够在目标设备上安装应用程序。有关如何执行此操作的信息，请参阅 [Build your application for Android](/engine/6000.0/manual/platform-specific/android/building-and-delivering/build-process.md)。

**重要信息**：Unity 在多个连接的 Android 设备上不支持 Unity Remote。要解决此问题，Unity 会自动选择找到的第一台 Android 设备。可以同时连接多台 iOS/tvOS 设备和一台 Android 设备。所有这些连接的设备都显示在 **Device** 列表中。

## 在 Unity Remote 中预览应用

在 Unity 编辑器中，点击“播放”按钮，即可在目标设备和游戏视图中查看应用的运行效果。在应用运行期间，Unity Remote 会将输入数据流式传输回 Unity 编辑器，而脚本会像在目标设备上直接运行一样处理这些输入。

## 性能

在使用 Unity Remote 时，应用实际上在 Unity 编辑器中运行，而其视觉内容会通过串流传输到目标设备。由于编辑器与设备之间的带宽有限，Unity 会对串流内容进行压缩以确保传输效率。默认情况下，Unity 使用 JPEG 压缩方法，这是一种有损压缩方式，可能会降低图像质量。

### 压缩方法

提高 Unity Remote 图像质量的一种方法是将压缩方法更改为 PNG。PNG 是一种无损压缩格式，虽然会占用更多带宽，但不会降低图像质量。要将压缩方法更改为 PNG：

1. 在 [Editor Settings](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-editor-manager.md.md)（菜单：**编辑 (Edit)** > **项目设置 (Project Settings)** > **编辑器 (Editor)**）。
2. 在 **Unity Remote** 部分中，将 **Compression** 设置为 **PNG**。

### 更改分辨率

默认情况下，Unity 在将应用串流到 Unity Remote 时会降低应用的分辨率。这会生成较小的图像，虽然降低了图像质量，但减少了带宽需求，并提升了运行时性能。如果您希望以应用的原始分辨率进行预览，请按照以下步骤操作：

1. 在 [Editor Settings](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-editor-manager.md.md)（菜单：**编辑 (Edit)** > **项目设置 (Project Settings)** > **编辑器 (Editor)**）。

2. 在 **Unity Remote** 部分中，将 **Resolution** 设置为 **Normal**。
