从0到1实现打包项目资源及SDK接入全过程

简介: 从0到1实现打包项目资源及SDK接入全过程

前言



hello大家好~,经常有小伙伴在群里提到两个问题:一个是,除了官方文档上的demo,有没有其他略微大型一点的练手Demo可以提供下?第二个是,接SDK难度大么,老是接不成功怎么办?


别急,今天我们会详细教大家 如何在网上找到项目资源进行打包 ,然后再 接入PocoSDK的全过程


1.想找demo练手,选择什么引擎的项目比较合适



首先要明确给大家的是,如果是基于Airtest框架进行自动化工作,不管是什么引擎,我们都可以进行自动化的开发工作,引擎的不同并不会影响到我们使用基于图像识别的自动化框架。


但如果是基于UI控件搜索的Poco框架,不管是Untiy还是Cocos的项目,都需要接入PocoSDK后才能进行自动化工作。另外在IDE的poco辅助窗下,针对不同的引擎项目,我们需要在辅助窗内选择对应的引擎版本来帮助我们插入poco初始化的相关语句。



综上,只要是框架支持的引擎项目,我们都是可以拿来练手的~


2.在哪里找适合自己练手的项目资源



如果您是想进行 Android或者IOS原生App 测试的话,任意找一个项目就可以,因为在原生项目上,是直接支持airtest以及Poco的,不需要接入SDK。


如果您是想获取Unity或者其他引擎适合自己练手的项目资源,以Untiy为例,我们可以进入 Unity官方商店 内,选择上方页签内的资源按钮,选择2D/3D,在其中找到适合自己练手的项目即可。



当然 cocos引擎商店 也存在很多优质的官方Demo,例如21点等等,这些Demo同样与Unity商城的官方Demo一样,只需要下载并且pull到本地的引擎内即可。


Unity官方商城传送门:assetstore.unity.com/Cocos官方商城传送门:

store.cocos.com/#/


3.如何打包选好的项目资源



这个问题在我们群内好多小伙伴都提出过~今天我们以Cocos creator中的21点项目为例,看看实现其打包功能的全过程。


打开我们的Cocos  creator引擎,在引擎上方页签内依次选择,拓展-->拓展商店,在弹出的Web界面内选择21点官方范例,并且点击下载,具体操作见下图:



下载完毕后,我们点击界面右上角的下载列表,点击复制到文件夹,再找到本地任意的文件夹进行储存。



然后重启Cocos引擎,打开我们刚才已经储存的项目路径,打开项目即可。当我们已经看到这个界面的时候,代表我们打包的第一步已经成功啦~



接下来我们需要 布置Cocos引擎所需要的打包环境 ,而我们的打包环境需要在本地部署AndroidSDK、JDK、NDK,以及ant。


① AndroidSDK传送门:www.androiddevtools.cn/

② JDK传送门:www.oracle.com/technetwork…

③ NDK传送门:pan.baidu.com/s/1AzzHcWhJ…

④ ant传送门: ant.apache.org/bindownload…


以上所需要部署的环境网上教程很广泛、在这里不进行一一阐述。待所有环境部署完毕之后,点击Cocos  creator引擎上方的菜单栏,依次选择  文件-->设置-->原生开发环境 ,将NDK和AndroidSDK路径配置为自己的本地路径之后,点击保存,关闭窗口。



再次返回至Cocos  creator引擎主界面中,点击顶部菜单栏的项目,再点击构建发布,将会得到以下界面:



各位小伙伴看到此界面应该会很懵圈吧~没事的,小编会为大家讲解构建发布界面中各个名词的含义,以及使用场景,小编没提到的部分都是跟随默认~不需要进行改变的。


① 游戏名称 :生成的apk 名字

② 发布路径 :生成的工程路径

③ 发布平台 :生成的平台,这里我们选择Android就可以、

④ 包名:输入合法的包名,或者选择默认的模板包名

⑤ Target API Level : 安卓版本的高度

⑥ APP ABI-->armeabi-v7a,它指的是是第7代及以上的 ARM    处理器。2011年15月以后的生产的大部分Android设备都使用它。

⑦ APP ABI-->arm64-v8a,它指的是第8代、64位ARM处理器,很少设备,三星 Galaxy S6是其中之一。

⑧ APP ABI-->x86,可以直接理解为打出来的项目工程可以直接在安卓模拟器上使用。这里根据自身设备情况勾选适合自己的选项即可。

⑨ 设备方向 :四个选项分别对应的是出包之后场景对应的方向,上下左右、选择适合自己项目的方向,勾选上即可。


准备完毕后,点击构建,在构建成功的情况下,点击编译,编译完毕后就会在发布路径产生APK包,这个包就是供我们测试用的Android包。


注:如果编译产生报错,并且报错原因是找不到Android-X,X为对应的Androld版本,我们只需要将构建发布内切换至对应的安卓版本即可,如果在打包过程中遇到其他疑难杂症可以进入我们的官方群~群内有专业人士为各位小伙伴进行解答。


4.成功打包,但在poco辅助窗无法刷出UI树



注意注意(敲黑板!!!),前面我们曾经说过,安卓原生APP是可以不借助PocoSDK直接可以刷新出UI树,但是我们的游戏因为是用引擎开发,所以必须要接入PocoSDK才可以正常刷新出项目的UI树。这里我们就讲一下21点这个项目如何接入PocoSDK,各位小伙伴认真听哦~


首先我们来看一下PocoSDK官方文档说明,说明地址:mp.weixin.qq.com/s/8FI2Y8bHH…


① Github上pull下我们的PockSDK

② 复制SDK到指定的项目工程下

③ 编辑Cocos Js引擎的配置文件

添加脚本-->挂载一个永远不会消失的节点上


前三步实现的难度都比较小,很多小伙伴都卡在了第四步上,小编在群里见过最多的问题就是,啊 这个添加脚本是手动添加吗?永不消失的节点是什么呀?今日小编就重点给大家讲解一下这两个问题。


添加脚本是手动添加吗?


添加脚本是需要手动添加,添加的项目路径见下图:



脚本内容需要更改为:



在脚本内容更改完毕后,点击保存。


永不消失的节点是什么呀?怎么添加节点啊?


这里大家需要明白节点的概念,在Cocos中,节点是一个展示和组织的概念,它的实体可能是不同的类型,对于不同类型的实体,可能产生不同的事件,例如给button赋予一个点击事件,给input赋予一个输入事件等等。


每一个场景内部的节点可能都不同,在21点游戏中,从初始的排行榜界面进入到游戏界面,因为游戏场景的改变,整个UI树都需要销毁重建,这些被销毁重建的UI节点,就不是我们所认为的永不消失的UI节点。


在讲完非永不消失的UI节点后,我们讲一下永不消失的UI节点。永不消失的UI节点,即在你切换任意场景时,此节点都会常驻,并且永不销毁。这种永不消失的节点可大致分为两种,一种是强制赋予一个永不消失的属性另一种是常驻内存的根节点/特殊节点,例如主相机节点。


那么我们知道了什么是永不消失的节点后,如何进行节点的挂载?


这里小编个人建议是挂载至常驻内存的根节点,也就是主相机节点。我们只需要打开我们的Cocos引擎,找到我们21点项目中的主相机节点,点击该节点,然后再点击节点右侧的添加组件按钮,之后再添加我们手动编写的脚本即可,如下图:



在添加完毕后,再次进行打包(即再次构建发布)。打包完毕后,我们就可以将已经打包的最新包体装入手机中,在IDE的设备连接窗口中连接该手机,并在poco辅助窗内选择Cocos-js就可以看到我们21点项目的UI树啦~


以上,就是打包项目和接入SDK的全过程啦~

相关文章
|
7天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
333 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
5月前
|
API 开发工具 网络架构
【Azure Service Bus】使用Python SDK创建Service Bus Namespace资源(中国区)
本文介绍了如何使用Python SDK创建Azure Service Bus Namespace资源。首先,通过Microsoft Entra ID注册应用获取Client ID、Client Secret和Tenant ID,完成中国区Azure认证。接着,初始化ServiceBusManagementClient对象,并调用`begin_create_or_update`方法创建资源。
119 29
|
8月前
|
前端开发 Java Shell
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
469 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
API 开发工具 vr&ar
PicoVR Unity SDK⭐️一、SDK下载、项目设置与程序初始配置
PicoVR Unity SDK⭐️一、SDK下载、项目设置与程序初始配置
|
存储 API 开发工具
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
113 0
|
开发工具 数据安全/隐私保护 Python
【Azure 环境】通过Python SDK收集所有订阅简略信息,例如订阅id 名称, 资源组及组内资源信息等,如何给Python应用赋予相应的权限才能获取到信息呢?
【Azure 环境】通过Python SDK收集所有订阅简略信息,例如订阅id 名称, 资源组及组内资源信息等,如何给Python应用赋予相应的权限才能获取到信息呢?
107 0
|
开发工具 Android开发
Android项目架构设计问题之SDK内部减少每次回调时的冗余判断逻辑如何解决
Android项目架构设计问题之SDK内部减少每次回调时的冗余判断逻辑如何解决
102 0
|
Java API 开发工具
Android项目架构设计问题之为SDK添加新的回调支持如何解决
Android项目架构设计问题之为SDK添加新的回调支持如何解决
116 0
|
16天前
|
开发工具 Android开发
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
211 11
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
|
JavaScript 前端开发 Java
[Android][Framework]系统jar包,sdk的制作及引用
[Android][Framework]系统jar包,sdk的制作及引用
383 0

热门文章

最新文章

  • 1
    CompreFace:Star6.1k,Github上火爆的轻量化且强大的人脸识别库,api,sdk都支持
    756
  • 2
    【Azure Developer】编写Python SDK代码实现从China Azure中VM Disk中创建磁盘快照Snapshot
    104
  • 3
    【02】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-项目开发实战-准备工具安装-编译器DevEco Studio安装-arkts编程语言认识-编译器devco-鸿蒙SDK安装-模拟器环境调试-hyper虚拟化开启-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
    359
  • 4
    【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    411
  • 5
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    469
  • 6
    【01】完整开发即构美颜sdk的uni官方uts插件—让所有开发者可以直接使用即构美颜sdk的能力-优雅草卓伊凡
    278
  • 7
    AutoTalk第十三期-应知必会的自动化工具-阿里云SDK支持策略(一)
    150
  • 8
    自动化AutoTalk第十期:应知必会的自动化工具-阿里云SDK
    268
  • 9
    API稳定安全最佳实践:用阿里云SDK为业务保驾护航
    245
  • 10
    如何接入电竞体育直播API或者SDK
    344