Cocos Creator 打包 Android 原生,如何配置构建环境?关键就一点

news2024/9/22 4:33:31

前段时间,有好几位老铁留言 Cocos Creator 打包 Android 原生出现问题:一种是构建失败,一种是运行起来报错

其实,我也是有好长一段时间没有碰过 Android 原生了,而且我这台电脑,环境都没有配置。

前段时间,我将自己一个 2.0.10 的老项目,升级到了Cocos Creator 3.6.2,顺手测试了一把在 3.6.2 上打包 Android。

424207c01f17fe92b42bc2b51381bcbb.png

不知道为什么,出乎意料的顺利,一次性构建成功,安装到手机上运行也很丝滑。

67189fab67816b7e2c1f8907cc4813ad.jpeg

Android APK体验下载:

  • https://pan.baidu.com/share/init?surl=rtySSs9NFyMJBzuwT8EeXg&pwd=vrg2

后来我发现有个关键点,就是 Android NDK 版本千万不要用太新的,看 Cocos 官方文档中推荐的 NDK 版本在 r18 ~ 21 之间,文档如下:

bd7ecc02ded41b9e75de2e75ef039e7d.png

在此记录一下我的 Android 配置流程,如果有小伙伴,打包 APK 遇到问题可以参考一下。

01 官方文档

我在打包 Android 前,还是先认认真真地,看了官方文档,建议你也先读一下。

  • 《安装配置原生开发环境》

  • https://docs.cocos.com/creator/manual/zh/editor/publish/setup-native-development.html

按文档介绍,我首先下载安装 Android Studio,下图是我安装好的版本:Android Studio Dolphin | 2021.3.1

9da3418ddeca8957415ddf34244f16cf.png

安装好后,第一次运行 Android Studio 会有一大......堆的下载更新,需要有点耐心,基本上是跟着提示来就行。

41c68c6dbea5ff165b4d396219c1df53.png

上图是我更新后的 Android Studio 版本详情。

02 下载 SDK & NDK

然后是在 Android Studio 中下载当下主流的 Android Platform SDK,我这里下载的是 Level 33、Level 32 两个版本。

17314a860099276091f225d7179ed4b6.png

切换到 SDK Tools 这一页,安装最新版本的 Build-Tools,我这里显示的是 33.0.1,好像是默认安装的。

f4380e6415c9dc08e722a13f960a7aed.png

如果在你的电脑上,不是像上图这样显示的,勾选面板底部的 Show Packages Details 复选框,就能看到了。

SDK Tools 面板继续向下,找到 NDK(Side by side) ,我这里选择的是 18.1.5063045 ,看下图:

c326dbdf978da43e8add3405a4b07de0.png

勾选好后点击面板下面的 Apply 按钮开始下载,再耐心等一阵。

03 Creator 偏好设置

Android SDK & NDK 下载完成后,打开 Cocos Creator 主菜单 -> 偏好设置 -> 外部程序,分别设置配置 NDK、SDK 路径。

618b371b641d84aff766fe1a9869fa29.png

我用的是 Mac 系统,路径为:

  • NDK:/Users/[用户名]/Library/Android/sdk/ndk/18.1.5063045

  • SDK:/Users/[用户名]/Library/Android/sdk

你可在自己电脑上 Android Studio 的 SDK 面板上可以找到,具体路径位置。

04 Creator 构建发布

打开 Creator 构建面板,创建一个 Android 发布,在 Target API Level 一项会检测到我们安装的 Android SDK 版本,我这里配置的是 android-32。

65ae5697642c67107f3361e3a9ebf1fb.png

再设置一个 Android 的包名ID,屏幕方向设置为竖屏,其它的选项都默认。

检查没有问题后,依次点击构建面板下方的 构建 -> 生成。构建是生成 Cocos Creator 游戏资源包,生成才是真正打包出 Andoird APK。

这时,你可以打开构建日志,查看整个 Android 构建打包过程。

a4188346f5daec603c74517d53b7112e.png

最后显示 BUILD SUCCESSFUL 就表示打包完成,我这个项目总共花了 3分46秒。

5b58745d1c5d470f70e704f032ec9cc4.png

构建生成出的 APK 文件路径:

  • release:当前工程/build/android/publish/release

  • debug:当前工程/build/android/publish/debug

05 小结

这次打包 Android 的过程感觉还是挺顺利的,希望本文对你有所帮助。最后,总结一下环境配置流程:

  1. 安装 Android Studio 并按提示升级更新;

  2. 在 Android Studio 中下载 SDK、NDK;

  3. 在 Cocos Creator 中配置 Android SDK、NDK 路径;

  4. 在 Cocos Creator 构建面板中选择打包 Android 平台。

点击阅读原文可下载我构建出的 APK 包进行体验。如果本文对你有用,感谢给送个小心心吧!


更多精彩cf3e3d4b5eea723b7cd2a4443b80e8ca.pngdd08d4dd08dd9f34f65fd6f4e1a3c6e0.pngdb4521d23b381bb23ae4b5d3a4de1289.png

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

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

相关文章

idea创建web项目没有jsp选项,不识别jsp,没有tomcat选项

如果你的idea的web项目中没有jsp选项 同时也不识别jsp 那么建议你检查一下你的idea是否为社区版 如果是社区版那么没有jsp的问题无法解决,这只是无法识别,但是语句对的可以正常运行 解决这个问题建议换个idea 至于tomcat, 在plugins中搜s…

axios的学习

axios是基于promise对ajax的一种封装 //将省份信息打印到网页上 <p class"my-p"></p> <script src"https://unpkg.com/axios/dist/axios.min.js"></script> <script>axios({url:http://hmajax.itheima.net/api/province}).…

【PCIE】hot-reset和link disable

Hot reset 规则 如果上游伪端口&#xff08;Pseudo Port&#xff09;的任何一个通道连续接收到两个带有热复位位设置为1b、禁用链路位和回环位设置为0b的TS1有序集合&#xff0c;并且两个伪端口上的任何一个通道&#xff08;接收到TS1有序集合&#xff09;要么收到EIOS&#xf…

java方法的覆盖(Overriding )和隐藏(Hiding)

Java方法的覆盖&#xff08;Overriding &#xff09;针对的是实例方法&#xff08;即非静态方法&#xff09;&#xff0c;而方法的隐藏&#xff08;Hiding&#xff09;针对的是类方法&#xff08;即静态方法&#xff09;。 方法的覆盖和隐藏指的是子类对从父类继承的方法进行重…

基于simulink基于颜色分割方法跟踪人员的面部和手部(附源码)

一、前言 此示例演示如何使用基于颜色的分割方法跟踪人员的面部和手部。 二、模型 下图显示了颜色分割示例模型&#xff1a; 三、颜色分割结果 为了为示例创建准确的颜色模型&#xff0c;处理了许多包含肤色样本的图像&#xff0c;以计算 Cb 和 Cr 颜色通道的均值 &#xf…

基于Unity2017版本的2D3D Infinite Runner Engine 1.5.1二维三维跑酷游戏模板

基于Unity2017版本的2D3D Infinite Runner Engine 1.5.1二维三维跑酷游戏模板 有多种游戏模式 还有个竖屏的玩法 工程地址&#xff1a;https://download.csdn.net/download/Highning0007/88020755

MFC学习日记(一)——创建新项目

此系列所有文章参考链接&#xff1a;http://www.jizhuomi.com/software/141.html 点击file新建项目创建一个MFC新项目 点击确定 点击下一步 选择应用程序类型 我们看到有四种类型&#xff1a;Single document&#xff08;单文档&#xff09;、Multiple documents&#xff…

传统图像处理之目标检测——人脸识别

代码实战&#xff1a;人脸识别 import numpy as np import cv2 img cv2.imread("3.webp")face_cascade cv2.CascadeClassifier(r./haarcascade_frontalface_default.xml)gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)#探测图片中的人脸 faces face_cascade.detec…

Android kotlin 实现把多个控件整体上下拉回弹功能(添加是否禁用顶部和底部回弹的参数设置,以及回弹效果结束监听)

目录 一、实现效果二、源码1、上下拉回弹,自定义ScrollView2、主activity一、实现效果 二、源码 1、上下拉回弹,自定义ScrollView 上下拉回弹,自定义ScrollView,ReboundScrollView.kt package com.example.myapplication3.myviewimport android.content.Context import

Netty核心技术九--TCP 粘包和拆包及解决方案

1. TCP 粘包和拆包基本介绍 **TCP是面向连接的&#xff0c;面向流的&#xff0c;提供高可靠性服务。收发两端&#xff08;客户端和服务器端&#xff09;都要有一一成对的socket&#xff0c;因此&#xff0c;发送端为了将多个发给接收端的包&#xff0c;更有效的发给对方&#x…

OpenCV 入门教程:图像的基本操作和处理

OpenCV 入门教程&#xff1a;图像的基本操作和处理 导语一、图像的基本操作1.1 获取图像的大小1.2 访问图像的像素1.3 修改图像的像素值 二、图像的基本处理2.1 图像的灰度化2.2 图像的平滑处理2.3 图像的边缘检测 总结 导语 在计算机视觉和图像处理领域&#xff0c;对图像进行…

Spring Boot 中的 CompletableFuture 类是什么,如何使用?

Spring Boot 中的 CompletableFuture 类是什么&#xff0c;如何使用&#xff1f; 介绍 在开发企业级应用程序时&#xff0c;我们经常需要异步执行任务。异步执行任务可以提高应用程序的性能和响应能力。在 Java 8 中&#xff0c;引入了 CompletableFuture 类&#xff0c;它提…

zabbix 监控 windows 系统、java应用、SNMP

目录 一、部署 zabbix 监控 windows系统 1.下载 Windows 客户端 Zabbix agent 2 2.安装客户端&#xff0c;在监控的windows主机上配置 3.在服务端 Web 页面添加主机&#xff0c;关联模板 二、部署 zabbix 监控 Java应用 1.客户端开启 java jmxremote 远程监控功能 1.1配置…

finalshell上传文件到虚拟机一直失败

目录 1.首先看一下你的虚拟机的可用空间是否足够 2.查看是否是root用户 1.首先看一下你的虚拟机的可用空间是否足够 在finalshell查看即可 如果空间不够则将虚拟机关机 &#xff0c;右键虚拟机找到设置&#xff0c;找到硬盘 &#xff08;我这里演示的是VMwareFusion&#xff…

Linux--冯诺依曼体系结构

【Linux】冯诺依曼体系结构、操作系统及进程概念_linux io 冯诺依曼_平凡的人1的博客-CSDN博客 存储器指的是内存还是磁盘&#xff1f; 内存 输入设备&#xff1a;键盘、摄像头、话筒、磁盘、网卡... 输出设备&#xff1a;显示器、音响、磁盘、网卡... CPU: 运算器&#x…

Jetpack compose——深入了解Diffing

Diffing是什么 "Diffing" 是 Jetpack Compose 中用于优化性能的一种技术。它的工作原理是比较新旧 UI 树&#xff0c;并只更新实际发生变化的部分。这意味着即使你的应用有大量的 UI&#xff0c;Compose 也能保持高效的性能。 当 Composable 函数被重新调用&#x…

医学图像增强系统的设计_kaic

目录 1绪论 1.1课题背景 1.2医学图像增强以及相关理论的现状2 1.3本文内容安排 2图像增强技术 2.1空域增强方法 2.1.1空域点运算增强方法 2.1.2空域滤波增强方法 2.2频域增强算法 2.2.1低通滤波 2.2.2高通滤波 2.2.3同态滤波 2.3本章小结 3医学图像增强算法 3.1医学图像的特点 …

Unity跑酷小游戏-警察捉小偷

Unity跑酷小游戏-警察捉小偷 WRPUltimate3DEndlessRunnerKit2017 采用Unity2017版本运行 NGUI版本较旧&#xff0c;需要更新NGUI的版本或者换成UGUI Assets/NGUI/Scripts/UI/UIAnchor.cs(73,53): error CS0619: UnityEngine.RuntimePlatform.WindowsWebPlayer is obsolete:…

【观察】新五丰联合华为“躬身实践”,推动猪场实现智慧化跨越升级

中国是全球的生猪生产和消费大国&#xff0c;生猪存栏量、出栏量以及猪肉产量均居世界第一。不仅如此&#xff0c;我国的人口数量和饮食结构还决定了猪肉在国内肉类消费中具有“不可撼动”的地位&#xff0c;可以说猪肉的供应与国计民生息息相关。 数据显示&#xff0c;2022年中…

MySQL外键约束使用案例

MySQL外键约束使用 语法:FOREIGN KEY (外键列名)REFERENCES 主表(参照列)案例 创建课程表和班级表 创建学生表