UE4.27-UE5.1设置打包Android环境

 打包Android配置文件

1. 配置打包Android的SDK需求文件位于下面文件中:

2. 指定了对应的SDK环境变量名字以及NDK需求等:

UE4.27-UE5.1--脚本自动配置

安装前提

1. 务必关闭虚幻编辑器和Epic Games Launcher,以确保NDK组件的安装或引擎环境变量的设置正确无误。

2. 如果希望在虚幻4.24或更老版本的基础上进行升级,建议卸载CodeWorks for Android和现有全部NDK组件,并删除CodeWorks的安装文件夹。否则,Android Studio将继续使用之前的CodeWorks安装文件夹更新SDK。

3. CodeWorks默认安装目录为 C:/NVPACK。卸载CodeWorks后,确保删除此文件夹

安装AndroidStudio特定版本4.0

1. 下载安装UE4.27对应的AndroidStudio版本:AndroidStudio。

​​​​​​https://developer.android.com/studio/archive?hl=zh-cn

2. 安装AndroidStudio4.0,注意安装路径选择默认路径,否则SetupAndroid.bat 将无法找到文件,除非你先编辑它。

3. 安装后第一次打开,下载基础库。

(1) JDK默认路径:

(2) SDK路径:

Android命令行工具唯一选择8.0

        虚幻引擎的Android SDK设置依赖Android的 8.0 版本命令行工具。该操作对于UE 4.27、5.0和5.1是必须的。

1. 打开AndroidStudio的SDKManager:

2. 在SDK Tools中设置CommandLineTools版本为8.0并安装。

3. 找到引擎目录中对应的SetupAndroid.bat。

4. 编辑SetupAndroid.bat,按照如下方式设置:

set SDKMANAGER=%STUDIO_SDK_PATH%\tools\bin\sdkmanager.bat

(1) SetupAndroid.bat也指定了依赖的其他库指定版本:

5. 重启电脑让相关AndroidStudio生效。

设置AndroidNDK

1. 运行引擎中Engine/Extras/Android/SetupAndroid.bat。此脚本将下载并安装所需的安装NDK和默认信息版本到Android主目录中

2. NDK的安装目录应为 C:/Users/[Username]/AppData/Local/Android/SDK/ndk/。

3. 如果收到 repositories.cfg 无法加载的警告,可导航至其应该在的文件夹(通常为 C:/Users/[Username].android/repositories )并创建一个空白的 repositories.cfg 文件。Android设置通常就可以继续了。

4. 如果收到一条错误消息,提示你名为 lldb;1 的打包文件无法加载,请使用文本编辑器打开SetupAndroid脚本,然后找到下面这行代码:

call "%SDKMANAGER%" "platform-tools" "platforms;android-28" "build-tools;28.0.3" "lldb;3.1" "cmake;3.10.2.4988404" "ndk;21.1.6352462"删除这个列表中的 lldb;3.1 条目,保留其他条目。这样设置就能正常运行。这个问题在虚幻引擎4.25.1以及更高版本中解决了。

安装build-tools唯一选择28.0.3

1. SetupAndroid.bat中默认支持的build-Tools为28.0.3,需要在AndroidStudio中SDK Tools中设置为28.0.3。

下载其他库文件

1. 下载Android Studio中SDK Tools中其他所有内容。

2. 如果没有下载其他内容会打包报错提示AAPT2失败:

手动设置SDK路径

1. 如果上述步骤都未遇到问题,虚幻引擎将自动关联Android SDK、当前Android NDK版本和Java开发工具包(JDK)的SDK路径。不过,如果你在使用早期版本的虚幻引擎,你可能需要手动设置SDK路径才能兼容。如果你安装了虚幻引擎4.25,同时还安装了早期版本的引擎,并且该引擎使用了CodeWorks,则很有可能出现这种情况。

2. 请勿同时安装CodeWorks和Android Studio,否则你会遇到错误。如果你还需要支持除了4.25或更高版本以外的早期版本的虚幻引擎,请使用本文中的Android Studio设置,然后按照本节中的说明进行操作,以便定位你所用Android Studio的路径。如需找到SDK路径,请打开 编辑(Edit) > 项目设置(Project Settings),然后找到 平台(Platforms) > Android > Android SDK 分段。

3. 将此类字段留空时,其会退回到前一章节中安装流程所用的默认路径集。若已安装多个此类组件,或已安装在非标准目录中,可在此手动设置路径。或可打开 DefaultEngine.ini 并在 [/Script/AndroidPlatformEditor.AndroidSDKSettings] 部分下设置。

若DefaultEngine.ini中不存在 SDKPath、NDKPath 和 JDKPath 的条目,则将使用Android主目录的默认路径。

参考链接:

1. 官网链接:https://docs.unrealengine.com/4.27/zh-CN/SharingAndReleasing/Mobile/Android/Setup/AndroidStudio/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/203629.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

P1005 [NOIP2007 提高组] 矩阵取数游戏

网址:P1005 [NOIP2007 提高组] 矩阵取数游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 动态规划和高精度的组合,使我的滨州旋转 最后只得了80,两个测试点超时了 看题解有人是用了int128来做的,明天学一下 我的递归思路和…

关于 mapboxgl 的常用方法及效果

给地图标记点 实现效果 /*** 在地图上添加标记点* point: [lng, lat]* color: #83f7a0*/addMarkerOnMap(point, color #83f7a0) {const marker new mapboxgl.Marker({draggable: false,color: color,}).setLngLat(point).addTo(this.map);this.markersList.push(marker);},…

java 操作git

​ 实现功能&#xff1a;借助jgit实现拉取文件&#xff0c;并返回文件路径清单 <!-- 依赖库 版本号有自行选择&#xff0c;只是需要注意支持的jdk版本即可&#xff0c;我使用的是jdk1.8--> <dependency><groupId>org.eclipse.jgit</groupId><artif…

AI必然成为未来的OS

我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版&#xff0c;欢迎购买。点击进入详情 ChatGPT引入插件&#xff0c;AI必然成为未来OS&#xff0c;或至少成为绝大多数APP首选入口。未来软件开发根据任务不同&#xff0c;有两种不同范式&#xff1a; &a…

unity 2d 入门 飞翔小鸟 场景淡入淡出功能(三)

1、在图层新建个空的图层 场景2 2创建c#脚本 脚本创建好后&#xff0c;将脚本推拽进空白图层里面&#xff0c;将黑色图片拉进去脚本的参数里面&#xff0c;如上面最后一张图&#xff0c;两个切换的场景都要进行上述操作 using System.Collections; using System.Collection…

多个项目复用node_modules

多个项目使用的node_modules基本一致&#xff0c;每个项目都安装一遍依赖&#xff0c;对空间造成资源浪费。 通过创建软链接的方式&#xff0c;共用一套node_modules。 Win解决方案 mklink /d [链接文件或目录] [原始文件或目录] // 举例 mklink /d D:\work\project-1\node_m…

识别低效io引起的free buffer waits

产生事发时间段的awr报告 Top 5 wait events 这里重点关注&#xff1a; 1.free buffer waits 2.enq_HW-contention 3.enq:tx-row lock contention enq:HW-contention属于水位线的争用&#xff0c;已经透过alter table allocate extent&#xff0c;提前分配空间,这里不做讨论 …

软件工程之需求分析

一、对需求的基本认识 1.需求分析简介 (1)什么是需求 用户需求&#xff1a;由用户提出。原始的用户需求通常是不能直接做成产品的&#xff0c;需要对其进行分析提炼&#xff0c;最终形成产品需求。 产品需求&#xff1a;产品经理针对用户需求提出的解决方案。 (2)为什么要…

【Python】Flask + MQTT 实现消息订阅发布

目录 Flask MQTT 实现消息订阅发布准备开始1.创建Flask项目2创建py文件&#xff1a;mqtt_demo.py3.代码实现4.项目运行5.测试5.1 测试消息接收5.2 测试消息发布6、扩展 Flask MQTT 实现消息订阅发布 准备 本次项目主要使用到的库&#xff1a;flask_mqtt pip install flask…

Mysql支持ssl

Mysql支持ssl 查看数据库是否支持ssl配置 mysql> show variables like ‘have%ssl%’; 查看数据库端口号 mysql> show variables like ‘port’; 查看数据库数据存放路径 mysql> show variables like ‘datadir’; 通过openssl 制作生成 SSL 证书&#xff08;有…

Leetcode刷题详解——最长湍流子数组

1. 题目链接&#xff1a;978. 最长湍流子数组 2. 题目描述&#xff1a; 给定一个整数数组 arr &#xff0c;返回 arr 的 最大湍流子数组的长度 。 如果比较符号在子数组中的每个相邻元素对之间翻转&#xff0c;则该子数组是 湍流子数组 。 更正式地来说&#xff0c;当 arr 的子…

【前端设计模式】之策略模式

概述 在前端开发中&#xff0c;我们经常会遇到需要根据不同的条件或情况来执行不同的算法或行为的情况。这时&#xff0c;策略模式就能派上用场。策略模式是一种行为型设计模式&#xff0c;它将不同的算法封装成独立的策略对象&#xff0c;使得这些算法可以互相替换&#xff0…

ALPHA开发板烧录工具MfgTool简介

一. 简介 前面我们已经移植好了 uboot 和 linux kernle &#xff0c;制作好了根文件系统。但是我们移植都是通 过网络来测试的&#xff0c;在实际的产品开发中肯定不可能通过网络来运行。 因此&#xff0c;我们需要将 uboot 、 linux kernel 、 .dtb( 设备树 ) 和 rootf…

串口环形收发原理及实现

一、环形收发队列构建 1、构造环形收发数组及其长度 #define buff_size 10 Unsigned char buff[buff_size]; 2、定义环形收发读/写位置 u16 R_Buff; u16 W_Buff; 3、结构体封装 typedef struct Qbuff {u16 write; //写位置u16 read; //读位置u8 buf…

Zabbix自定义飞书webhook告警媒介1

说明&#xff1a;此配置仅适用于7版本及以上&#xff0c;低版本可能有问题 JavaScript 内容如下&#xff1a; try {var sourceData JSON.parse(value),req new HttpRequest(),response;if (sourceData.HTTPProxy) {req.setProxy(sourceData.HTTPProxy);}req.addHeader(Conte…

手机拍摄的照片复制到CSDN博客中自动旋转的问题的解决

概要&#xff1a;写CSDN博客的时候&#xff0c;复制手机拍摄的照片到博客中&#xff0c;照片会自动发生90度旋转。目前找到了两个解决方法。问题出现的环境是Ubuntu22.04Firefox120.0.1 方法一&#xff1a;用shutter打开重新保存 选中图片——>鼠标右键——>选择用其他软…

pytorch中的transpose用法

注意&#xff1a;维数从0开始&#xff0c;0维 1维2维…,负数代表从右往左数&#xff0c;-1代表第一维&#xff0c;以此类推 import torch import numpy as np# 创建一个二维数组 arr torch.tensor([[[1, 2],[3, 4]],[[5, 6],[7, 8]]]) print("原始数组&#xff1a;"…

python操作MySQL——封装增删改查

上一篇&#xff1a;python操作MySQL数据——连接与插入数据-CSDN博客 下一篇&#xff1a;python操作mysql——批量添加csv数据-CSDN博客 import pymysql.cursors from pymysql.err import OperationalError from data.readCsv import Csv_to_lst import os import configpar…

Docker部署.NET6项目

Docker的三大核心概念 1、docker仓库&#xff08;repository&#xff09; docker仓库&#xff08;repository&#xff09;类似于代码库&#xff0c;是docker集中存放镜像的场所。实际上&#xff0c;注册服务器是存放仓库的地方&#xff0c;其上往往存放着很多仓库。每个仓库集…

案例058:基于微信小程序的智能社区服务系统

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…