当前位置: 首页 > news >正文

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/

相关文章:

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

打包Android配置文件 1. 配置打包Android的SDK需求文件位于下面文件中: 2. 指定了对应的SDK环境变量名字以及NDK需求等: UE4.27-UE5.1--脚本自动配置 安装前提 1. 务必关闭虚幻编辑器和Epic Games Launcher,以确保NDK组件的安装或引擎环境…...

MySQL授权密码

mysql> crate databases school charcter set utf8; Query OK, 1 row affected, 1 warning (0.00 sec) 2.在school数据库中创建Student和Score表 mysql> use school Database changed mysql> create table student-> -> (id int(10) primary key auto_incremen…...

0X05

打开题目 点击完登录和注册都没有什么反应,所以先扫一下看看 在出现admin.php后就截止了,访问看看,进入后台。。 尝试一下弱口令 admin/12345 或者是demo/demo 设计中-自定义->右上角导出主题 找到一个导出的点,下载了一个1.zip压缩包…...

Doris优化总结

1 查看QueryProfile 利用查询执行的统计结果,可以更好的帮助我们了解Doris的执行情况,并有针对性的进行相应Debug与调优工作。 FE将查询计划拆分成为Fragment下发到BE进行任务执行。BE在执行Fragment时记录了运行状态时的统计值,并将Fragment执行的统计信息输出到日志之中。…...

案例059:基于微信小程序的在线投稿系统

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

利用STM32内置Bootloader实现USB DFU固件升级

本文将介绍如何利用STM32内置的Bootloader来实现USB DFU(Device Firmware Upgrade)固件升级功能。首先,我们会介绍USB DFU的原理和工作流程。然后,我们将详细讲解如何配置STM32芯片以支持USB DFU,并提供相应的代码示例…...

Centos7如何安装MySQL

目录 一、卸载mysql 二、安装mysql 注:本文主要是看了这位大佬安装MySQL,才想着写一篇记录一下。 一、卸载mysql 安装mysql之前一定要将之前安装的mysql相关文件删除干净,防止出现错误。 (1)关闭mysql 开启了mysql就…...

VR远程带看,助力线下门店线上化转型“自救”

VR远程带看,因自身高效的沉浸式在线沟通功能,逐渐走进了大众的视野。身临其境的线上漫游体验以及实时同屏互联的新型交互模式,提升了商家同用户之间的沟通效率,进一步实现了远程线上一对一、一对多的同屏带看,用户足不…...

算法通关村第十七关-白银挑战贪心算法高频题目

大家好我是苏麟 , 今天说说贪心算法的高频题目 . 大纲 区间问题判断区间是否重叠合并区间插入区间 区间问题 判断区间是否重叠 描述 : 给定一个会议时间安排的数组 intervals ,每个会议时间都会包括开始和结束的时间intervalsl[i] [start, end] ,请你…...

【数据结构】动态规划(Dynamic Programming)

一.动态规划(DP)的定义: 求解决策过程(decision process)最优化的数学方法。 将多阶段决策过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解。 二.动态规划的基本思想: …...

Redis key过期删除机制实现分析

文章目录 前言Redis key过期淘汰机制惰性删除机制定时扫描删除机制 前言 当我们创建Redis key时,可以通过expire命令指定key的过期时间(TTL),当超过指定的TTL时间后,key将会失效。 那么当key失效后,Redis会立刻将其删除么&#…...

ElasticSearch 谈谈分词与倒排索引的原理

ElasticSearch是一个基于Lucene的搜索服务器。Lucene是Java的一个全文检索工具包,而ElasticSearch则是一个分布式搜索和分析引擎。下面,我们将详细讨论ElasticSearch中的分词和倒排索引的原理。 分词: 在ElasticSearch中,分词是…...

【Java】Java8重要特性——Lambda函数式编程以及Stream流对集合数据的操作

【Java】Java8重要特性——Lambda函数式编程以及Stream流对集合数据的操作 前言Lambda函数式编程Stream流对集合数据操作(一)创建Stream流(二)中间操作之filter(三)中间操作之map(四&#xff09…...

大话数据结构-查找-散列表查找(哈希表)

注:本文同步发布于稀土掘金。 8 散列表查找(哈希表) 8.1 定义 散列技术是在记录的存储位置和它的关键字之间建立一个确定的对应关系f,使得每个关键字key对应一个存储位置f(key)。查找时,根据这个确定的对应关系找到给…...

持续集成交付CICD:Sonarqube自动更新项目质量配置

目录 一、实验 1.Sonarqube手动自定义质量规则并指定项目 2.Sonarqube自动更新项目质量配置 一、实验 1.Sonarqube手动自定义质量规则并指定项目 (1)自定义质量规则 ①新配置 ②更多激活规则③根据需求激活相应规则④已新增配置 ⑤ 查看 &#x…...

Linux设置Docker自动创建Nginx容器脚本

文章目录 前言一、本地新建脚本二、复制本地脚本到服务器三、执行服务器脚本总结如有启发,可点赞收藏哟~ 前言 一、本地新建脚本 在本地新建nginx-generator.sh脚本文件,并保存以下内容 主要动态定义两个变量(容器名称/服务器本地文件名、端…...

技术博客:Vue中各种混淆用法汇总

技术博客:Vue中各种混淆用法汇总 摘要 本文主要介绍了在Vue中使用的一些常见混淆用法,包括new Vue()、export default {}、createApp()、Vue.component、Vue3注册全局组件、Vue.use()等,以及如何使用混淆器对代码进行加固,保护应…...

【python】Python生成GIF动图,多张图片转动态图,pillow

pip install pillow 示例代码: from PIL import Image, ImageSequence# 图片文件名列表 image_files [car.png, detected_map.png, base64_image_out.png]# 打开图片 images [Image.open(filename) for filename in image_files]# 设置输出 GIF 文件名 output_g…...

python/matlab图像去雾/去雨综述

图像去雾和去雨是计算机视觉领域的两个重要任务,旨在提高图像质量和可视化效果。本文将综述图像去雾和去雨的算法、理论以及相关项目代码示例。 一、图像去雾算法 基于暗通道先验的方法: 这是广泛应用于图像去雾的经典算法之一。该方法基于一个观察&…...

Docker+jenkins+gitlab实现持续集成

1.安装环境 服务器ip虚拟机版本192.168.5.132centos7.6192.168.5.152centos7.6 2. 安装docker 安装必要的一些系统工具 yum install -y yum-utils device-mapper-persistent-data lvm2添加软件源信息,要确保centos7能上外网 yum-config-manager --add-repo http:…...

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...

【机器视觉】单目测距——运动结构恢复

ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛&#xf…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序

一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

12.找到字符串中所有字母异位词

🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...