LOADING

UE 4.26 安卓打包配置 详细流程分享

首先是必下的文件


android sdk
(保持最新版,最好下载Android Studio来安装)
android ndk r21b
(引擎提示建议版本为r21b – r23,推荐版本是r21b,但是这是个已经抛弃的版本,得自己找渠道下载)
java dk 1.8.0_77
(jdk似乎必须要是这个版本才行)
以上除了android sdk,其他的建议直接通过搜索引擎下载,从Android Studio里只能下载到最新版本,UE4.26基本只对这几个内容的版本兼容比较好,下载其他版本不好说会不会出现错误。
准备好这些之后,在引擎项目设置里设置好路径:

需要注意的地方是


Android Build Tools 版本


SDK API Level (Android Build Tools)的版本必须为30以下,因为从31开始,里面就不再自带DX工具。直接编译的话,默认的lastest会指认最新版本,然后就会报错说找不到DX工具,需要另外下载一个30版本。

建议把其他比30更加新的版本都删掉。我本地就遇到过我明明设置了30版本,但是会被强制运行最新版的问题。

PS:听说可以把30以后版本里面的D8.bat复制一份改名成DX.bat,和把lib文件夹里的d8.jar复制一份改名成dx.jar也能解决,也可以试试。
然后,BuildTool用的什么版本,引擎设置里最好也设置一下:

打包支持设置



建议只勾选安卓,其他的先去掉,因为这边遇到过(有可能)会莫名其妙报一个ios的错误,只留安卓就好了。

关于安卓分布签署(Distribution Signing)的设置


这个建议设置一下,因为不设置的话可能会无法打包,我本地就是,不设置就无法打包,就算是通过usb部署也不成功,原因不明。
本地都是可以暂时申请一个临时的,具体方法网上挺多的,这是官方文档的说明。
https://docs.unrealengine.com/4.27/en-US/SharingAndReleasing/Mobile/Android/DistributionSigning/
简单说明下就是
1.win + R打开运行窗口,输入cmd打开控制台

2.输入keytool -genkey -v -keystore ExampleKey.keystore -alias MyKey -keyalg RSA -keysize 2048 -validity 10000

命令不用去完全记住,不过其中值得注意的是橙色字体部分
1.ExampleKey.keystore 这个是后面生成的许可证文件名字,ExampleKey可以改成其他名字。
2.MyKey,这个是可以换成自己想要的名字。

3.回车后,会需要输入一些列参数,其中,里面的密码是需要记住的,可以都使用同一个密码,最少六位数。其他信息的可随意填写。

4.完成后,会在C:\Users\[userName] 里生成这个ExampleKey.keystore文件,把它复制到项目目录的build/android里,通过项目设置里可以直接打开



5.完成后,进入项目设置,设置一下就完成了

Key store 填文件全名,ExampleKey.keystore。
Key Alias 填入上面命令行的名字,也就是MyKey。
Key Store Password 填入这个文件的加密密码,在cmd上设置的密码。
Key Password 填入这个许可密匙的密码,如果在cmd设置了一样的那就可以空着。
接下来要应用这个Distribution Signing:

勾上这个For Distribution就行了,勾了之后会自动切换成Shipping的构建配置,可以手动改成其他的。
PS:可以把Full Rebuild去掉,这样,上一次构建完成以后,没有再进行修改过的文件引擎就不会再进行构建了,如果是做测试用的话,可以省不少时间。
如果打包第一次成功,之后经过各种不知手动操作,导致出现了莫名其妙的打包失败的话,可能是缓存导致的,删除save文件夹应该可以解决。

把数据全部塞入Apk(不生成OBB文件)