Skip to main content

为 Android 移动端构建和测试

您可以使用"构建和测试"功能在 Android 设备上测试 VRChat 世界和 Avatar,而无需发布它们。本文档介绍如何设置和使用此功能来更快地构建世界和 Avatar!

构建和测试的设置​

要使用 Android 移动端的构建和测试功能,您需要设置 Unity Android 工具、项目和设备。

设置 Unity Android 工具​

您首先需要为与 VRChat 兼容的 Unity 编辑器安装 Android Build Support 模块,才能处理 Android 内容。您可能已经安装了该模块,因为 VRChat Creator Companion 默认会安装它。请按照以下步骤进行检查。

  1. 打开 Unity Hub 并导航到左侧的"Installs"。
  2. 找到您的项目使用的 Unity 版本的安装(当前推荐版本是 2022.3.22f1)。如果您的安装列表在编辑器路径下方显示了"Android",则说明您已经安装了该模块,可以直接进入"设置您的项目"步骤。否则,继续执行步骤 3。

安装了 Android 模块的 Unity 安装

  1. 点击该安装旁边的齿轮图标,然后点击"Add modules"。
  2. 找到"Android Build Support"并勾选旁边的框。
  3. 点击继续以安装 Android Build Support 模块。

现在您应该能够为 Android 构建内容了。

设置您的项目以 Android 为目标​

通过选择"VRChat SDK"->"Show Control Panel"打开 SDK 面板,然后选择 Builder 选项卡。

找到"Select Platform"部分并将其更改为"Android"。

设置您的 Android 设备以测试世界​

移动端的构建和测试使用 Android Debug Bridge (ADB) 将构建好的资源包文件传输到您的 Android 设备。

ADB 使用 Android 设备上的 USB 调试来与设备通信。这使 ADB 能够发送文件和启动应用程序,以及许多其他调试相关功能。

启用 USB 调试还需要您在设备上进入开发者模式。

警告

USB 调试允许您的计算机执行许多潜在危险的操作而无需任何通知。您只应在信任的应用程序中使用它。

VRChat SDK 使用 USB 调试将文件发送到您的设备,打开 VRChat 应用程序,并启动您的测试世界或加载您的测试 Avatar。

📱 在 Android 手机和平板上启用开发者模式​

要在 Android 手机或平板上启用开发者模式,您必须执行以下操作:

  1. 确保您的手机通过支持数据传输的 USB 线缆连接到计算机。
  2. 前往"Settings"->"About Phone",向下滚动到底部的"Build number",点击版本号 7 次以启用开发者模式。
  3. 现在开发者模式已启用,您可以看到更多开发者选项。前往"Settings"->"System"->"Developer Options",找到"USB Debugging"复选框并勾选。

🥽 在 Meta Quest 头显上启用开发者模式​

要在 Meta Quest 设备上进行构建和测试,您还需要启用开发者模式并允许 USB 调试。

您必须使用 Meta Quest Developer Hub 将您的 Meta Quest 头显切换到开发者模式。

要了解如何在头显上设置开发者模式,请阅读 Meta 的说明。

使用构建和测试​

启用开发者模式、启用 USB 调试并将 Android 设备连接到计算机后,您现在应该能够进行构建和测试了。

首次启动​

Avatar 和世界都可以在 Android 设备上进行测试。过程大致相同。

Avatars​

要在 Android 上测试新的 Avatar,您必须首先按照上述步骤启用 USB 调试。

成功设置 USB 调试后,打开 VRChat 应用并加载到一个实例中。然后,点击 SDK 中的"Build and Test New Build"按钮。

您的 Avatar 将出现在主菜单的 Avatar 部分下的"SDK Test Avatars"选项卡中。

当您使用测试 Avatar 时,每次构建和测试时都会自动切换到最新版本。

世界​

测试世界有一些额外要求:

  • 确保您至少启动过一次应用程序,以便在尝试测试世界之前生成应用目录,然后关闭 VRChat。
  • 首次启动进入测试世界之前,VRChat 应用程序必须处于关闭状态。
  • 您的 Android 设备必须保持解锁状态,以便 ADB 能够将 VRChat 应用启动到测试世界。

完成上述所有设置后,将您的项目置于 Android 模式,按下"Build and Test New Build"按钮来在设备上测试世界。

世界构建完成后,您应该会看到 VRChat 应用自动打开。如果您尚未登录应用,您将被直接送到登录界面。登录后,您将被直接送到测试世界。

如果您已经登录,客户端加载完成后您应该会被直接送到测试世界。底部的播放按钮指示客户端的加载状态,加载完成后稍作延迟您就会被送到世界。

当您对世界进行后续更改时,再次按下"Build and Test New Build"。您的世界将被重新构建、发送到设备并重新加载,无需任何额外操作。

工具与故障排除​

本节介绍如何修复一些常见问题,以及一些在移动端开发过程中可能有用的工具。

故障排除​

如果您出于其他原因使用调试模式的开发者,请确保拔掉或禁用除要构建和测试的 Android 设备之外的所有其他设备的 USB 调试。

对于 Android 手机和平板,如果 USB 调试已启用但您的计算机无法识别手机/平板,最好的故障排除方法是完全重启 USB 调试过程。

  1. 拔掉 Android 设备。
  2. 禁用开发者模式和 USB 调试。
  3. 插入 Android 设备。
  4. 点击"About Phone"->"Build Number" 7 次以启用开发者模式。
  5. 在"System"->"Developer Options"部分启用 USB 调试。
  6. 再次尝试构建和测试。

如果由于某种原因您的 VRChat 应用没有包名 com.vrchat.mobile.playstore,您可以在项目设置中修改 SDK 查找的包名。可以在"VRChat"->"SDK"->"Android App Package Name"找到。

如果您尝试在 VRChat 应用的测试版本上进行构建和测试,或者由于某种原因您没有使用 Google Play 商店的正式版本,这可能会很有用。除非有充分的理由更改,否则请保持为 com.vrchat.mobile.playstore。

有用的设备镜像工具​

您可能希望能够在桌面的窗口中查看手机,而不是每次都低头看手机。有一个有用的开源工具叫做 scrcpy 可以实现这一点。

scrcpy 利用 ADB 在桌面上的小窗口中显示设备的屏幕画面。您可以使用鼠标与手机交互,而不必使用手机本身。

要使用此工具,请下载适用于您平台的最新版本(例如,在 Windows 上下载 scrcpy-win64 zip 文件)。这将为您提供一个包含运行 scrcpy.exe 所需所有文件的压缩文件夹。将其解压到方便的位置。

您可以通过双击运行 scrcpy.exe,或在该文件夹的命令提示符中运行 scrcpy.exe。如果您已成功设置 USB 调试,这将显示一个窗口,镜像您设备上看到的内容。

请注意,ADB 无法录制锁屏,因此在尝试解锁手机时预览窗口将完全黑屏。您可以实际解锁手机,然后继续通过镜像窗口进行交互。

另外,建议在启动 Unity 之后再启动 scrcpy。这是因为 scrcpy 会在没有运行 ADB 服务器的情况下启动自己的服务器,但 Unity 会在启动时终止任何现有的 ADB 服务器,这将关闭您的设备镜像窗口。

您可能还会发现启用"System"->"Developer Options"中的"Stay Awake"功能很有用,这样可以避免点击设备以保持唤醒并防止锁定。只要设备插入电源并充电,这就会使设备保持永久唤醒状态。

通过 Wi-Fi 构建和测试​

您也可以无线构建和测试。这对于某些设置可能更方便,但也需要一些命令行操作来连接,因此通常不推荐替代 USB 调试。

要启用无线调试,您需要直接在命令行上与 ADB 交互。

  1. 首先确保 Unity 已打开,这样 ADB 将使用 Unity 的 ADB 服务器进程
  2. 导航到项目使用的 Unity 版本的安装文件夹。
    • 可以通过打开 Unity Hub,点击左侧的"Installs",点击安装旁边的齿轮,然后点击"Show in Explorer"找到。
    • adb.exe 可以在 Data/PlaybackEngines/AndroidPlayer/SDK/platform-tools 中找到
    • 在该文件夹中打开命令提示符,使用 cd [您的 unity 安装路径]/Data/PlaybackEngines/AndroidPlayer/SDK/platform-tools 导航。

现在您可以使用 ADB 命令了。如果您仍然启用了 USB 调试,一个测试是否正常工作的好命令是使用 adb devices -l,它应该列出所有启用了调试的设备。您也可以尝试 adb shell ls 来打印设备上的一些顶级文件夹,这同样需要启用调试。

现在我们已经找到了 ADB,那么无线调试呢?

  1. 禁用 USB 调试,为了保险起见拔掉设备
  2. 启用 System->Developer Options->Wireless Debugging。
  3. 点击 Wireless Debugging 以查找更多选项。
  4. 点击"Pair device with pairing code",您将得到一个 6 位配对码,以及要使用的 IP 地址和端口。
  5. 运行 adb pair [ip]:[port]
    • 例如,如果配对屏幕显示 IP 地址 127.0.0.1 和端口 1234,则运行 adb pair 127.0.0.1:1234
    • 请注意端口每次都会随机化,因此每次要通过 Wi-Fi 调试时都需要回到这个步骤。
  6. 在提示时输入配对码。
  7. 然后输入 adb connect [ip]:[port] 连接到设备

现在您应该能够通过 Wi-Fi 使用 ADB 了。

尝试运行 adb devices -l 来检查是否正常工作。您现在应该能在设备列表中看到您的设备。

您现在可以返回 SDK 并点击"Build & Test New Build"来通过 Wi-Fi 测试内容。