Unity3d打包到Android

本文参考:

Unity3D新手教程:如何打包发布到Android_哔哩哔哩_bilibili

一、Unity 打包Android的环境搭建

1、工具安装

Unity Hub已经集成了Android的环境搭建。

选择Add modules

然后安装Android Build Support下的所有工具。

如果各个工具都安装成功,可以在Edit -> Preferences -> External Tools中查看已安装的工具。

保证JDK、SDK、NDK都没有报错。 

2、工具介绍

Android SDK是Android的开发工具集,

Android NDK是Native开发工具集,Android中的c/c++编译成so文件,以供java调用。

3、注意事项

Unity每个版本对应不同的SDK和NDK,版本不匹配会直接导致异常。

假如某个工具自动安装异常,比如下方的NDK。可以手工下载对应版本的工具。下载时NDK的大版本号需要一致,小版本不一定需要一致,下载完成后需要在工具的配置文件中手工修改成unity需要的版本号。

修改NDK版本号的文件:进入下载好的NDK目录,打开source.properties文件,然后修改Pkg.Revision值如下:

不能修改大版本号(23),只能修改小版本号(1.7779620)。

同时,手工下载的NDK需要放在unity默认的目录下,不能指定自己随意的一个路径。如果不知道默认路径在哪里,可以查看其他工具比如SDK的路径,然后NDK的路径和SDK是平级的。

二、Unity一键打包apk

File -> Build Settings

首先,点击Add Open Scenes选择对应的打包场景然后打勾

其次,Platform选择Android

接着,反勾选"Export Project",这个选项表示导出为Android的project项目,可以用Android Studio打开该project以便进一步完善代码,最终在Android Studio中打包生成apk文件。

然后,选择Player Settings -> Player,在这里修改游戏的桌面图标(Default Icon),以及画面的分辨率(Default Window Width / Default Window Height)的值。

最后,点击Build按钮,就可以生成apk包。

三、基于mono打包与基于IL2CPP打包的区别

Unit内置Mono的.net虚拟机,解释执行.dll的.net字节码,性能会差一些。

IL2CPP模式会将dll + unity.net转为cpp代码让NDK编译,所以性能会比较好,正式项目一般都是选这种方式进行打包。

选择打包方式的方法:

Build Settings -> Player Settings -> Player -> Other Settings -> Configuration -> Scripting Backend,

然后选择对应的打包方式。

对比Mono和IL2CPP方式,IL2CPP方式的程序大小约是mono方式的2/3。

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

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

相关文章

如何使用 win32com 库

以下是如何使用 win32com 库的基本步骤: 1. 安装 pywin32 win32com 是 pywin32 库的一部分,首先需要安装 pywin32: pip install pywin322. 导入 win32com.client import win32com.client3. 连接到 COM 对象 使用 win32com.client.Dispat…

给Windows系统中注入服务,即windwos守护进程

最近总是在windwos环境下测试nginx,总是需要频繁重启nginx服务。于是考虑有没有可能把nginx加入到系统服务的操作。在网上找了一大堆资料,现在来总结一下! 方法1:利用nssm工具实现 这是一个守护进程的软件,可以在win…

FastGPT 知识库搜索测试功能解析(二)

目录 一、代码解析 1.1 searchTest.ts 1.2 controller.ts 本文接上一篇文章FastGPT 知识库搜索测试功能解析 对具体代码进行解析。 一、代码解析 FastGPT 知识库的搜索测试功能主要涉及两个文件,分别是 searchTest.ts 和 controller.ts 文件,下面分别进行介绍。 1.1 se…

关于海康网络摄像头使用VLC或者Opencv拉流有延迟的问题

环境:Windows VLC / Opencv-Python 先说结论,我用VLC或者Pyhton opencv直接拉取海康网络摄像头的rtsp流,会有1-2s延时,特别明显。后来搜到这边文章,解决了问题: 如何降低海康、大华等网络摄像头调用的高…

Optima: 一个用于 Tapestri 平台的单细胞多组学数据分析的开源 R 包

分子条形码技术的最新进展使得在单细胞水平进行下一代转录组测序成为可能,例如10 Genomics Chromium和DropSeq。此外,CITE-seq 的出现使得可以在对单个细胞进行转录组分析的基础上同时对表面蛋白进行分析。同时,为了表征 DNA 和蛋白质谱&…

ubuntu那些ppa源在哪

Ubuntu中的 PPA 终极指南 - UBUNTU粉丝之家 什么是PPA PPA 代表个人包存档。 PPA 允许应用程序开发人员和 Linux 用户创建自己的存储库来分发软件。 使用 PPA,您可以轻松获取较新的软件版本或官方 Ubuntu 存储库无法提供的软件。 为什么使用PPA? 正如…

添加动态云层

<template> <div class"topbox"> xx卫星管理 </div> <div class"selectbox"> <div class"title"> 卫星列表 </div> <el-table :data"tableData" style"width: 100%;height:230px;" …

亚信安慧AntDB-M负载均衡

负载均衡是分布式系统中常用的技术&#xff0c;主要是将工作任务均衡分布到系统的各个资源点上&#xff0c;可以充分利用系统资源。 AntDB-M分布式内存数据库节点角色可以分为管理节点(MN)、计算节点(CN)和数据节点(DN)三种。管理节点收到客户端连接请求后&#xff0c;会经由负…

IEEE官方列表会议 | 第三届能源与环境工程国际会议(CFEEE 2024)

会议简介 Brief Introduction 2024年第三届能源与环境工程国际会议(CFEEE 2024) 会议时间&#xff1a;2024年12月2日-4日 召开地点&#xff1a;澳大利亚凯恩斯 大会官网&#xff1a;CFEEE 2024-2024 International Conference on Frontiers of Energy and Environment Engineer…

elementPuls 表格反选实现

真的在网上搜了很多资料发现根本实现不了反选 最下面有示例 然后去看了下官网 发现官网有教你怎么选中某个值的方法 官网中的”多选“ 官网地址 <template><el-tableref"multipleTableRef":data"tableData"style"width: 100%"selectio…

MySQL 和 SQL Server 中的连表更新 UPDATE JOIN 写法比较

MySQL 和 SQL Server 中的连表更新 UPDATE JOIN 写法比较 一、前言1. MySQL 写法1.1 解释 2. SQL Server 写法2.1 解释 二、总结 一、前言 在关系型数据库管理系统&#xff08;RDBMS&#xff09;中&#xff0c;使用 UPDATE 语句进行表格更新是非常常见的操作。特别是当需要根据…

【C#】visual studio打包winForm(依赖DLL)为安装程序exe

0.简介 IDE&#xff1a;VS2022 平台&#xff1a;C# .NetFramework4.7 WinForm界面 有GDAL、EEplus库的依赖&#xff0c;所以在其他未安装环境的电脑中功能无法使用。 1. 安装 1.1 运行文件 在VS扩展中选择管理扩展&#xff0c;Microsoft Visual Studio Installer Projects …

如何合规与安全地利用专业爬虫工具,构建企业数据竞争优势

摘要&#xff1a; 本文深入探讨了在当今大数据时代&#xff0c;企业如何通过合规且安全的方式运用专业爬虫工具&#xff0c;有效收集并分析海量信息&#xff0c;进而转化为企业独有的数据优势。我们不仅会介绍最佳实践&#xff0c;还会讨论关键技术和策略&#xff0c;帮助企业…

java实现迭代(在大数据量时要比递归效率更高)

在项目中有个需求&#xff1a;查找指定机构下所有的子机构&#xff0c;之前使用的递归方式&#xff0c;效率相差很多 比如之前写的一个递归的方法&#xff1a;https://blog.csdn.net/qq_33651286/article/details/140539728 在Java中&#xff0c;递归和迭代是两种常用的算法实…

JavaScript 迭代器

在JavaScript中&#xff0c;迭代器是一种允许我们遍历集合中元素的对象。迭代器对象具有一个next()方法&#xff0c;该方法返回value和done。value是当前迭代的值&#xff0c;done属性是一个布尔值&#xff0c;表示是否到达了集合的末尾。 迭代器协议 一个迭代器对象必须具备以…

【网络】计算机网络基础——计算机网络背景和发展、认识网络协议、OSI七层模型、TCP/IP四层模型、网络的传输

文章目录 Linux网络1. 计算机网络背景和发展2. 认识网络协议3. OSI七层模型3.1 物理层3.2 数据链路层3.3 网络层3.4 传输层3.5 会话层3.6 表示层3.7 应用层 4. TCP/IP四层模型5. 网络的传输 Linux网络 1. 计算机网络背景和发展 开始的计算机都是独立模式&#xff08;计算机之间…

谷歌新的网站索引策略:将来可能不再为您的网站编制索引

10 年前&#xff0c;在 WordPress 上推出新博客的同时&#xff0c;Google 上的内容几乎是即时索引。 搜索引擎试图尽快向用户提供所有信息&#xff0c;这对内容创作者也有利。 然而&#xff0c;随着时间的推移&#xff0c;情况发生了变化&#xff0c;现在谷歌在索引方面变得极…

网络安全之信息收集阶段攻击和防护手段(一)

一、信息收集 前言&#xff1a;社工钓鱼往往是攻击者最喜欢的方式&#xff0c;攻击者一般会伪装成求职者、修改邮箱名称伪造办公邮件&#xff0c;诱导意识薄弱的员工进行下载恶意文件或恶意链接&#xff0c;链接往往会通过名称遮掩真实的IP地址。 攻击方&#xff1a;攻击者通…

Maven打包时将本地 jar 加入 classpath

在使用 maven 编译项目时&#xff0c;我们有时候会需要引入本地的 jar 包作为依赖&#xff08;不部署到本地仓库&#xff09;&#xff0c;一般会使用 scope 为 system 的标签来引入&#xff0c;如下所示&#xff1a; <dependency><groupId>com.example</groupI…

【解决】ubuntu20.04 root用户无法SSH登陆问题

Ubuntu root用户无法登录的问题通常可以通过修改‌SSH配置文件和系统登录配置来解决。 修改SSH配置文件 sudo vim /etc/ssh/sshd_config 找到 PermitRootLogin 设置&#xff0c;并将其值更改为 yes 以允许root用户通过SSH登录 保存并关闭文件之后&#xff0c;需要重启SSH服务…