对于 UE 项目而言,绝大部分情况下,不需要关心 Apk 的构建流程,虽然 UE 在打包时会生成一个 Android Studio 的工程,但基本对于开发层而言是隔离的,UE 的构建工具会自动处理。
调试也是一样,在 UE 项目开发中,Coding 在 VS 或 Rider 等 游戏开发环境 中进行,直接在 VS 中进行调试也是最合适的,再去打开 Android Studio,一是工具的臃肿,二是额外的 IDE 熟悉成本。
好在,谷歌推出了 AGDE 扩展工具(Android Game Development Extension for Visual Studio),可以直接在 VS 中调试 Android 项目,而不用使用 Android Studio。
首先,就是要下载 AGDE 并安装。它支持 VS2017-2022(但 UE 的文档里建议使用 VS2019)。
Android 环境
AGDE 对于 JDK 的要求是 JDK11+,太老的版本打开时会提示不支持。新版本的 JDK 可以从 Oracle 网站上下载:Java Downloads
在系统中,添加以下环境变量:
1 | setx JAVA_HOME "%current_dir_name%\jdk-18.0.1.1" |
路径可根据实际情况修改,我在 UE 开发笔记:Android 篇 文章中提供了一份完整的 Andoird 环境,只需要更新 JDK 版本即可开箱即用。
安装的 ADGE 会读取环境变量中的配置,无需再在 VS 中配置 JDK/NDK/SDK 的路径。
UE 侧的要求
调试环境包在 Project Settings
-Package
中取消勾选For Distribution
:
根据需要,打包为 Development
或Debug
/DebugGame
即可。
VS
在 VS 解决方案的 Games
下,添加打包出的 APK:
会出现一个 PROJECT_NAME-armv7
等命名的项:
将其设置为启动项目:
即可在 VS 中看到设备:
之后就可以像在 Win 上调试编辑器一样了,F5 即可安装到设备上。
设备上运行的会进程会等待调试器附加:
附加之后就能正确地在 VS 中进行断点了。