虚幻引擎(UE) 支持使用 Visual Studio 的Android游戏开发扩展(AGDE)插件 进行调试,该插件为Visual Studio中的Android项目提供了调试和分析工具,无需将环境切换到Android Studio。对于Windows用户,这是UE中Android项目的推荐调试环境。
本指南将指导你完成下载和启用此插件,并提供了使用此插件的实用资源链接。
1. 下载和安装AGDE
若要安装AGDE插件并设置项目的解决方案来使用该插件,请执行以下步骤:
-
确保你安装了 Visual Studio 2022 ,并将其用作虚幻引擎的默认Visual Studio版本。
-
从Android开发人员页面下载AGDE插件。当前UE需要23.1.82或更高版本的AGDE。
-
将AGDE插件安装到Visual Studio。
-
找到项目的.uproject文件,右键点击打开上下文菜单,然后点击 生成项目文件(Generate Project Files) 以重新生成Visual Studio解决方案。
新的解决方案文件将默认启用该插件。
2. 设置JDK
AGDE需要用到JDK17,如果你安装的是其他版本, 虚幻自动化工具(UAT) 将无法打包项目。
请遵循以下步骤,安装正确的版本:
-
下载并安装OpenJDK 17。记下你的安装目录。
-
打开 搜索栏 并找到 编辑系统环境变量(Edit the System Environment Variables) 。点击此选项打开 系统属性(System Properties) 对话框。
-
点击 环境变量(Environment Variables) 按钮。
-
选择
AGDE_JAVA_HOME环境变量,然后点击 编辑。如果你没有AGDE_JAVA_HOME变量,请通过点击 新建 添加该变量。 -
将
AGDE_JAVA_HOME的目录设置为你安装JDK的目录。
-
重新启动计算机,以便环境变量生效。
完成后,你的计算机现在将使用与AGDE插件兼容的JDK版本。
3. 使用AGDE启动项目
AGDE可以调试或附加到你的Android设备上的虚幻引擎应用程序。这需要你在Visual Studio中设置一些配置选项,还需要在使用AGDE之前打包APK,因为它可以编译你的Android项目的代码,但无法烘焙内容。执行以下步骤,在你的设备上启动项目。
-
使用 BuildCookRun 命令为Android打包你的项目。你还可以使用 Turnkey 或 虚幻编辑器(Unreal Editor) 中的 平台(Platforms) 下拉菜单。
请参阅"构建操作"和"烘焙内容",详细了解烘焙和打包过程。
-
打开你的项目的Visual Studio解决方案。
-
将你的 解决方案配置(Solution Configuration) 设置为 DebugGame ,并将你的 解决方案平台(Solution Platform) 设置为 Android 。
-
使用数据线将你想测试的Android设备插入计算机。设备会询问你授予USB调试权限或计算机访问设备数据的权限,此时请授予权限。
使用USB连接时,确保计算机上的数据线和端口都支持数据。
-
用于构建和调试项目的按钮现在应该显示设备的名称。点击它或按 F5 开始调试。你可能需要等待调试器。
如果你遇到SIGILL错误,请按F5跳过错误并继续运行AGDE。
项目将在你的设备上构建和启动,并且你将能够像使用Windows应用程序那样使用Visual Studio的调试工具。
4. 将AGDE附加到应用程序
要附加到虚幻引擎应用程序的运行中实例,请执行以下步骤:
-
点击工具栏中的 调试(Debug) 下拉菜单,然后点击 附加到进程(Attach to Process) 。
附加到进程"" loading="lazy" /> -
将 连接类型(Connection Type) 设置为 Android游戏开发扩展(Android Game Development Extension) 。
-
点击 连接目标(Connection Target) 下拉菜单,然后点击你的设备的条目。
-
选择你的应用程序的进程,然后点击 附加(Attach) 。
更多信息
有关AGDE的功能的更多信息,请参阅以下文档:
-
概述(Overview) :https://developer.android.com/games/agde
-
项目配置(Project Configuration) :https://developer.android.com/games/agde/adapt-existing-project
-
调试人员指南(Debugger Guide) :https://developer.android.com/games/agde/debugger
-
分析(Profiling) :https://developer.android.com/games/agde/measure