UE5.2.1 windows打包android
需要下载android studio 4.x 版本(本次使用的4.2.2 最新版本会出错 暂时没解决2023.8.2)
启动android studio,默认第一次会下载 android sdk
默认android sdk 安装路径 尽量不要修改 因为Unreal 那个setupAndroid.bat 就是采用的默认路径,修改sdk路径 记得修改 setupAndroid.bat 里的配置,默认为ANDROID_LOCAL=%LOCALAPPDATA%\Android\Sdk
例如(C:\Users\dream\AppData\Local\Android\Sdk)
通过android studio 下载 ndk command-line tool(latest)

5.修改 SetupAndroid.bat (引擎目录下 UE_5.2\Engine\Extras\Android)
(例如:H:\EpicGame\UE_5.2\Engine\Extras\Android)
set SDKMANAGER=%STUDIO_SDK_PATH%\cmdline-tools\8.0\bin\sdkmanager.bat (大概是86行位置)
将8.0 修改为latest (不一定是latest)具体可以到自己android sdk 目录下 cmdline-tools 下对应的文件夹
set SDKMANAGER=%STUDIO_SDK_PATH%\cmdline-tools\latest\bin\sdkmanager.bat

6.运行 SetupAndroid.bat,如果之前安装过 java ,设置过环境变量 JAVA_HOME,可能会运行出错,版本不匹配之类的错误,例如
错误1:Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
错误2:Using sdkmanager: C:\Users\dream\AppData\Local\Android\Sdk\cmdline-tools\latest\bin\sdkmanager.bat
错误: 加载主类 com.android.sdklib.tool.sdkmanager.SdkManagerCli 时出现 LinkageError
java.lang.UnsupportedClassVersionError: com/android/sdklib/tool/sdkmanager/SdkManagerCli has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
安装 jdk-20,设置环境变量为

重新运行SetupAndroid.bat

正常了 应该是 android studio 中的 java 环境跟 sdk manager 不匹配 (确实奇怪)

android 前面没有了警告
然而你运行 打包android 就会遇到

java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7
7.重新设置 设置环境变量 为 android studio 的jre 确认后关闭环境变量窗口

需要重启 UE 然后再打包,如果还出现上述报错 再次重启,可以考虑重启电脑
本文指针对 UE5.2.1,UE5.0可能无效 因为脚本文件都不相同,