Unreal Engine 4.27.2在Android平台开发的相关配置

Unreal Engine 4.27.2在Android平台开发的相关配置


UE的官方文档上有Android开发的详细介绍,本文记录一下我最近打包Android项目的一些问题和解决办法。另外本文就是为4.27配置Android开发环境,要兼容其他版本大概率会出错。

1、Android开发先决条件

(按照理论配置了一遍,遇到了好多问题,找到了大多数的问题的解决办法但是最终没成功,也可以看第二条进行配置)

UE官方文档上面写的第一步要在虚幻引擎安装目录的Engine/Extras/AndroidWorks/Win64文件夹下使用CodeWorksforAndroid来安装Android当前的CodeWorksforAndroid版本,不过4.27.2版本的目录下并没有CodeWorksforAndroid这个东西。

翻文档发现虚幻4.25及更高版本已经不用这样配置。

首先关闭虚幻编辑器和Epic Games Launcher,以此确保NDK组件的安装或引擎环境变量的设置正确(官方文档写的)。如果以前配置了老版本(4.24及以前的)的Android开发环境,要卸载CodeWorksforAndroid和现有全部NDK组件,删除CodeWorks的安装文件夹,否则,Android Studio将继续使用之前的CodeWorks安装文件夹更新SDK。

配置SDK和NDK之前,要安装Android Studio 4.0版本(这个我用的是Bumblebee版本,理论上也可以)。(Android Studio在20年的时候开始用了版本新代号,不再用数字了)(2022年12月1日晚更新:经历了无数次失败后我把Android Studio卸载了,换了官方指定的版本)

安装Android Studio的时候在Install Locations要选择默认路径,若用自定义的路径SetupAndroid.bat会无法找到文件,除非预先编辑它。

安装完首次打开Android Studio时在Import Android Studio Settings对话框处选择Do not import settings。

之后在Verify Settings对话框中确保使用默认的SDK路径。选Finish完成安装并开始下载组件。

然后选择工具栏Tools->SDK Manager中Appearance & Behavior->System Settings->Android SDK,在右边面板SDK Tools中下载Android SDK Command-line Tools(latest),点击Apply就可以安装该组件了。

然后设置NDK。在你引擎的目录下Engine/Extras/Android中,有三个Setup开头的文件。

Windows系统选.bat的打开安装。这里我就报错了,因为我的Android路径是自己设置的。看报错内容就是无法定位SDK。

找不到SDK,把SetupAndroid.bat用记事本打开发现找不到SDK会把ANDROID_HOME或ANDROID_LOCAL的路径设置为SDK。(不过我没有在我的.bat文件中找到ANDROID_LOCAL)

打开系统属性的环境变量,新建一个ANDROID_HOME设置为SDK的路径就可以了。(ANDROID_LOCAL应该也行,我两个都设置了)

如果是Windows系统,重启电脑后再运行SetupAndroid.bat。然后我的又显示了报错。

查询报错内容Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema发现是jdk版本太高了,需要低版本的jdk,这里我搜索后下载了jdk1.8。然后重新配置了jdk版本,再次执行SetipAndroid.bat。

报错显示没有安装CMake,回到Android Studio的SDK Manager中安装CMake。但是发现这样还是不行,下载的cmake版本太高了,用记事本打开SetupAndroid.bat,查找“$SDKMANAGERPATH/sdkmanager” “platform-tools” “platforms;android-28” “build-tools;28.0.3” “cmake;some_version” “ndk;some_numbers”,把“cmake;some_version” “ndk;some_numbers”都删掉,保存文件再运行SetupAndroid.bat。还是报错。

该报错说明SDK的licenses没有同意,在Android的SDK目录下,找到tools->bin,运行sdkmanager --licenses,一直填y即可。

这样理论上就下载了ndk,但是我至此仍没有成功,报错。

如果有repositories.cfg的warning,就在提示的文件夹中创建一个空白的repositories.cfg文件。

配置Unreal Engine

实际上我们可以自己下载好所有的包然后在虚幻的项目设置->Platforms->Android SDK面板中直接设置路径。

另外虚幻4.27.2推荐使用的是NDK r21b版本。具体兼容版本如下。

然后配置Android,打开虚幻引擎的项目设置->Platforms->Android,进行如下设置。两个绿色条本来是红色的,点击Configure以下,然后接受SDK证书,如果本来就是灰色就不用接受了,再改一下安卓包名称,把Project部分更换成项目名就可以了。

posted @ 2022-12-01 22:48  HD0117  阅读(1178)  评论(0编辑  收藏  举报