cocosCreator定制小游戏构建模板
1. 解决痛点
在开发微信小游戏过程中,需要在微信小游戏game.json加入一个配置键navigateToMiniProgramAppIdList,但常规通过构建发布game.json都是自动生成的,根本就不给你配置的机会.但如果不解决,需要在每次发布后,手动的在build目录中找到game.json文件,手动添加配置.或者复制一个配置好的文件,每次构建完成后,就复制覆盖.总之,很麻烦!
通过常规构建发布生成的game.json文件
{
"deviceOrientation": "portrait",
"networkTimeout": {
"request": 5000,
"connectSocket": 5000,
"uploadFile": 5000,
"downloadFile": 5000
},
"subpackages": []
}
我期望生成的game.json文件
{
"author":"wx:464884492 回复 cocos 加群",
"deviceOrientation": "portrait",
"navigateToMiniProgramAppIdList": [
"需要跳转的小程序appid"
],
"networkTimeout": {
"request": 5000,
"connectSocket": 5000,
"uploadFile": 5000,
"downloadFile": 5000
},
"subpackages": []
}
2. 项目中builder.json文件
在项目setting文件夹中,有一个builder.json文件.按照正常逻辑它应该和构建相关.凑巧的是在里边刚好还有一个wechatgame的配置对象.在没查阅文档的情况下,凭直觉在这个加入我需要的配置
...
"wechatgame": {
"author":"wx:464884492 回复 cocos 加群",
"REMOTE_SERVER_ROOT": "",
"navigateToMiniProgramAppIdList": ["需要跳转小程序appid"],
"appid": "当前项目appid",
"orientation": "portrait",
"separate_engine": false,
"subContext": ""
}
...
一溜烟操作后,赶紧构建发布.可最终的结果是添加的配置并没有如愿的添加到game.json文件中.可这问题必须要解决,不生效,我也很绝望啊.
3. 构建模板
绝望又怎样,还是要解决问题.日常百度,查文档.功夫不负有心人,在官网找到了定制项目构建流程.可是看了这个文档.一脸懵逼.虽然找到了方向,可是这文档说的也抽象了.我实在不能理解,我最终的构建模板该是个什么样子的.左思右想,不添加自定义模板也可以完成构建.说明,在编辑器安装目录中也有具体的构建模板,我复制过来就得了.
果不其然,在项目安装目录找到构建模板 C:\Program Files (x86)\CocosCreator\resources\builtin\weapp-adapter 里边刚好有一个wechatgame.解放我双手的稻草居然是你.于是乎我根据官网的提示,在我项目目录里边建立一个名为build-templates文本夹,然后把找到的wechatgame文件夹复制过来.我仿佛看到胜利的曙光了,赶紧构建发布.是的,并没有出现问题.可是,当我打开微信开发者工具时,在控制台输出一大串嘲讽红色的错误信息.好吧,感觉又失败了.
4. 借鸡下蛋
不慌,要冷静,仔细观察生成的文件结构和模板中的文件结构,仅仅只是多了res和src两个文件夹.于是大胆假设,放弃从安装目录去拷贝模板文件,直接从默认构建发布的文件去复制就得了.所以,先将项目文件中build-templates文件改个名字,重新构建发布.然后再去build目录中复制除了res和src之外的所有文件.然后再模板文件中的game.json文件中添加自定义配置navigateToMiniProgramAppIdList,再次构建发布,打开微信开发者工具.这次终于成功.
5. 总结
知识虽小,重在积累.2020注定是不平凡的一年.加油!!
欢迎感兴趣的朋友关注我的订阅号“小院不小”,或点击下方二维码关注。我将多年开发中遇到的难点,以及一些有意思的功能,体会都会一一发布到我的订阅号中
cocosCreator定制小游戏构建模板的更多相关文章
- cocosCreator微信小游戏排行榜思路
cocosCreator制作微信小游戏排行榜实现方案: 游戏认知:项目分为主域和子域,主域就是游戏主程部分,子域为单独处理微信排行榜公共域数据的. 游戏主域里创建一个节点,添加WXSubContext ...
- 【微信小游戏】文件系统,远程加载资源打破4M限制
一.前提 微信小游戏,对游戏包体的大小有严格是限制,上传文件大小<4M,但是本地缓存文件有50M空间,也就是说我们可以将一些资源放到网上,然后缓存到本地. 二.官方概念 文件系统 文件系统是小程 ...
- 【沙龙报名中】与微信&云开发官方团队零距离互动,揭秘爆款微信小游戏背后的技术!
有人说 微信小程序游戏的百花齐放 活像十几年前的4399小游戏称霸互联网的景象 " 歪,斗地主吗,三缺二, 不用下app,小程序就能玩,我保证不抢地主让你抢!" ...... &q ...
- 微信小程序之模板消息推送
最近在用sanic框架写微信小程序,其中写了一个微信消息推送,还挺有意思的,写了个小demo 具体见官方文档:https://developers.weixin.qq.com/miniprogram/ ...
- jQuery实践-网页版2048小游戏
▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...
- 带你使用h5开发移动端小游戏
带你使用h5开发移动端小游戏 在JY1.x版本中,你要做一个pc端的小游戏,会非常的简单,包括说,你要在低版本的浏览器IE8中,也不会出现明显的卡顿现象,你只需要关心游戏的逻辑就行了,比较适合逻辑较为 ...
- Egret白鹭H5小游戏开发入门(二)
前言: 昨天的文章中简单的介绍了Egret白鹭引擎从安装到基本的使用配置等问题,今天着重介绍H5小游戏开发的起步阶段,如Wing面板的使用,素材的处理,类的说明,开始布局等等. 整体概况: 根据上一篇 ...
- 两个Canvas小游戏
或许连小游戏都算不上,可以叫做mini游戏. 没有任何框架或者稍微有点深度的东西,所以有js基础的或者要追求炫酷效果的可以直接ctrl+w了. 先贴出两个游戏的试玩地址: 是男人就走30步 是男人就忍 ...
- 12岁的少年教你用Python做小游戏
首页 资讯 文章 频道 资源 小组 相亲 登录 注册 首页 最新文章 经典回顾 开发 设计 IT技术 职场 业界 极客 创业 访谈 在国外 - 导航条 - 首页 最新文章 经典回顾 开发 ...
随机推荐
- Linux Ubuntu 安装SSH服务
1.安装SSH命令:sudo apt-get install openssh-server 2.启动SSH服务命令:/etc/init.d/ssh start 3.停止SSH服务命令:/etc/ini ...
- Nginx的四层和七层代理
理论部分: 所谓四层负载均衡,也就是主要通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器,它一般走的是tcp,udp协议 所谓七层负载均衡,也称为“内 ...
- Navicat远程连接服务器Mysql
使用NAVICAT远程访问MYSQL的步骤 1.修改远程访问权限 //进入MySQL服务器或使用其它工具 xxxx@ubuntu:/$ mysql -h localhost -u root -p xx ...
- PHP常用接口数据过滤的方法
<?php /** * global.func.php 公共函数库 */ /** * 返回经addslashes处理过的字符串或数组 * @param $string 需要处理的字符串或数组 * ...
- java.lang.ClassNotFoundException :xxxxxxx
码的!java.lang.ClassNotFoundException: org.springframework.jdbc.core.RowMapper这个错误搞了半天 因为写的项目是手动建的WEB- ...
- mysql中tinyint、smallint、int和bigint类型的用法区别
mysql中tinyint.smallint.int和bigint类型的用法区别: 在MySQL的数据类型中,Tinyint的取值范围是:带符号的范围是-128到127.无符号的范围是0到255(见官 ...
- etcd安装部署步骤
我是通过yum直接安装的(yum install etcd -y),其生成的配置文件在/etc/etcd/etcd.conf. 这里分单机版和集群版来介绍配置项 单机配置 ETCD_DATA_DIR: ...
- C++走向远洋——50(Time类中的运算符重载、一目,二目比较运算符、二目赋值运算符、二目加减法运算符)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- 远程桌面协议RDP
远程桌面协议RDP(Remove Desktop Protocol) 通过mstsc客户端远程连接计算机,并对其进行管理等操作. 与TELNET的区别在于,TELNET显示的是远程计算机的命令行窗口, ...
- tp5.1 请求时间格式化
当前时间:{$Request.time|date='Y-m-d H:i:s'} 注意database.php的配置!记录一下!