Skip to main content

在 Android 移动设备上构建和测试

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

设置生成和测试

要使用 Build and Test for Android Mobile,您需要设置 Unity Android Tools、项目和设备。

设置 Unity Android 工具

首先,您需要为兼容 VRChat 的 Unity 编辑器安装 Android Build Support 模块,才能在 Android 环境中工作。您可能已经拥有它,因为 VRChat Creator Companion 默认会安装它。请按照以下步骤进行检查。

  1. 打开 Unity Hub 并导航到左侧的 “Installs”。
  2. 查找项目使用的 Unity 版本的安装(当前推荐版本为 2022.3.22f1)。如果您的安装在 Editor 路径下方列出“Android”,则表示您已经安装了该模块,您可以继续设置项目。否则,请继续执行步骤 3。

image.png

  1. 单击该安装旁边的齿轮图标,然后单击“添加模块”。
  2. 找到“Android Build Support”。如果该框并选中它旁边的框,如果
  3. 单击 continue 以安装 Android 构建支持模块。

您现在应该能够为 Android 构建世界。

设置项目以面向 Android

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

找到“选择平台”部分并将其更改为“Android”。

设置您的 Android 设备以测试 Worlds

移动版构建和测试利用 Android 调试桥 (ADB) 将构建的世界文件传输到您的 Android 设备。

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

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

因此,要在 Android 设备上进行构建和测试,您必须执行以下操作:

  1. 确保您的手机已使用能够传输数据的 USB 数据线插入计算机
  2. 通过转到“设置”->“关于手机”并向下滚动到底部的“内部版本号”来启用开发人员模式。点击 内部版本号 7 次以启用开发人员模式。
  3. 启用开发人员模式后,您可以看到更多开发人员选项。转到“设置”->“系统”->“开发人员选项”,然后找到“USB调试”复选框。检查“USB 调试”。

USB 调试警告
请注意,USB 调试使您的计算机能够在没有任何通知的情况下执行许多具有潜在危险的操作,并且只能与您信任的程序一起使用。VRChat SDK 使用此函数将文件发送到设备并打开 VRChat 应用程序以启动到测试世界。

使用 Build and Test

启用开发人员模式、启用 USB 调试并接通手机后,您现在应该能够构建和测试。

首次启动

  • 在尝试测试世界之前,请确保您至少启动了一次应用程序以允许生成应用程序目录,然后关闭 VRChat。
  • 在首次启动到测试世界之前,必须关闭 VRChat 应用程序。
  • 您的手机必须保持解锁状态,ADB 才能将 VRChat 应用程序启动到测试环境中。

完成上述所有内容,并将您的项目置于 Android 模式下,按下“Build and Test New Build”按钮以在您的设备上测试世界。

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

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

世界重新加载

您可以在 SDK 中选中“Enable World Reload”(启用世界重新加载)开关,以避免每次要测试您的世界时都必须关闭并重新打开 VRChat。选中此框后,您只需在进行更改后按下“Build and Test New Build”按钮 - 您的世界将被重建,发送到您的设备,并重新加载,无需任何进一步的操作。

工具和故障排除

本节介绍如何解决一些常见问题以及一些可为您的移动开发之旅提供帮助的工具。

故障 排除

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

如果启用了 USB 调试但您的计算机看不到您的手机,则解决此问题的最佳方法是完全重新启动 USB 调试过程。

  1. 拔下 Android 设备。
  2. 禁用开发人员模式和 USB 调试。
  3. 插入 Android 设备。
  4. 点击“关于手机”->“内部版本号”7 次,启用开发者模式。
  5. 在“系统”->“开发人员选项”部分中启用 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 服务器,这将关闭您的设备镜像窗口。

您可能还会发现在“系统”->“开发者选项”中启用“保持清醒”很有用,以避免必须点击设备以保持唤醒并防止锁定。只要设备插入电源并充电,就可以使设备永远保持唤醒状态。

通过 Wi-Fi 构建和测试

您还可以以无线方式构建和测试。这对于某些设置可能更方便,但也需要一些命令行交互才能连接,因此通常不建议通过 USB 调试进行此操作。

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

  1. 首先,确保 Unity 已打开,以便 ADB 使用 Unity 的 ADB 服务器进程
  2. 导航到您用于项目的 Unity 版本的 Unity 安装文件夹。
    • 这可以通过打开 Unity Hub 找到,单击左侧的“安装”,单击安装旁边的齿轮,然后单击“在资源管理器中显示”。
    • adb.exe可以在 Data/PlaybackEngines/AndroidPlayer/SDK/platform-tools 中找到
    • 通过启动命令提示符并使用 cd [your unity install path]/Data/PlaybackEngines/AndroidPlayer/SDK/platform-tools 导航到该文件夹,打开此文件夹中的命令提示符。

现在,您可以使用 ADB 命令。如果您仍然启用了 USB 调试,您可以使用 adb devices -l 测试一切是否正常,此命令会列出所有启用调试的设备。您还可以尝试用 adb shell ls 打印出设备上的一些顶级文件夹,同样需要启用调试。

现在我们已经找到了 ADB,那么那个花哨的 Wi-Fi 调试呢?

  1. 禁用 USB 调试并确保拔下设备
  2. 启用 System->Developer Options->Wireless 调试。
  3. 轻触 无线调试 查找更多选项。
  4. 点击“使用配对代码配对设备”,您应该会获得一个 6 位数的代码进行配对,以及要使用的 IP 地址和端口。
  5. adb pair [ip]:[port]
    • 例如adb pair 127.0.0.1:1234,如果配对屏幕具有 IP 地址127.0.0.1和端口1234
    • 请注意,端口每次都是随机的,因此每次要通过 Wi-Fi 进行调试时,都必须返回此步骤。
  6. 询问时输入配对代码。
  7. 现在键入adb connect [ip]:[port]以连接到设备

您现在应该可以通过 Wi-Fi 使用 ADB。

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

您现在可以返回SDK并点击“构建和测试新版本”以测试全球的Wi-Fi。