错误截图:

错误原因

将 Cocos 小游戏 Web-Mobile 丢网页上展示

报错分析

.cconb 文件找不到

解决思路

先写一个程序 遍历修改 web-mobile目录下所有的.cconb格式为.bin

# 转换cconb格式 to bin
def ConvertConb2bin(dir):for root, dirs, files in os.walk(dir):path = root.replace('\\', '/')for f in files:url = '%s/%s' % (path, f)info = os.path.splitext(f)name = info[0]ext = info[1]if ext == ".cconb":os.rename(f"{root}/{f}", f"{root}/{name}.cconb.bin")print(f"{root}/{name}.cconb.bin")

然后 新建一条资源管线来处理 .cconb文件的加载

  //新加一个额外处理cconb的资源管道function append_cconb_convert_pip() {const assetManager = cc.assetManager;//新建一个额外处理cconb的资源管道assetManager.transformPipeline.append(function (task) {const input = task.output = task.input;for (let item of input) {if (!item.url) continue;//更改资源依赖item.url.endsWith(".cconb") && ( item.url = cc.path.changeExtname(item.url, ".cconb.bin") );}});//重写bin资源加载处理assetManager.downloader.register("bin", (url, options, onComplete) => {url.endsWith(".cconb.bin") ? assetManager.downloader._downloaders[".cconb"]() : assetManager.downloader._downloaders[".bin"]();})}

最后 将管线写入到项目中

# 注入脚本到项目中
def intoApplication(dir):content = IUtils.fromFile(f"{dir}/application.js")content = content.replace("function topLevelImport(url) {", "%s\n\tfunction topLevelImport(url) {" % cconbPip, 1)content = content.replace("return loadAssetBundle(settings.hasResourcesBundle, settings.hasStartSceneBundle);","append_cconb_convert_pip();//创建cconb管道\n\treturn loadAssetBundle(settings.hasResourcesBundle, settings.hasStartSceneBundle);", 1)IUtils.writeInFile(f"{dir}/application.js",content)

完整的python源码:

from distutils.log import error
import os
import IUtils# cconbPip管线
cconbPip = '''//新加一个额外处理cconb的资源管道function append_cconb_convert_pip() {const assetManager = cc.assetManager;//新建一个额外处理cconb的资源管道assetManager.transformPipeline.append(function (task) {const input = task.output = task.input;for (let item of input) {if (!item.url) continue;//更改资源依赖item.url.endsWith(".cconb") && ( item.url = cc.path.changeExtname(item.url, ".cconb.bin") );}});//重写bin资源加载处理assetManager.downloader.register("bin", (url, options, onComplete) => {url.endsWith(".cconb.bin") ? assetManager.downloader._downloaders[".cconb"]() : assetManager.downloader._downloaders[".bin"]();})}
'''# 转换cconb格式 to bin
def ConvertConb2bin(dir):for root, dirs, files in os.walk(dir):path = root.replace('\\', '/')for f in files:url = '%s/%s' % (path, f)info = os.path.splitext(f)name = info[0]ext = info[1]if ext == ".cconb":os.rename(f"{root}/{f}", f"{root}/{name}.cconb.bin")print(f"{root}/{name}.cconb.bin")# 注入脚本到项目中
def intoApplication(dir):content = IUtils.fromFile(f"{dir}/application.js")content = content.replace("function topLevelImport(url) {", "%s\n\tfunction topLevelImport(url) {" % cconbPip, 1)content = content.replace("return loadAssetBundle(settings.hasResourcesBundle, settings.hasStartSceneBundle);","append_cconb_convert_pip();//创建cconb管道\n\treturn loadAssetBundle(settings.hasResourcesBundle, settings.hasStartSceneBundle);", 1)IUtils.writeInFile(f"{dir}/application.js",content)# 入口
if __name__ == "__main__":web_mobileUrl = "./src/web-mobile"if not os.path.exists(web_mobileUrl):error("请将cocos打包后的 web-mobile文件夹 放入 src目录下")else:ConvertConb2bin(f"{web_mobileUrl}/assets")intoApplication(web_mobileUrl)

已及直接可调用的 EXE文件
点击下载

使用方法
将 web-mobile 放入 解决后的 src目录下。点击运行 main.exe 即可

download failed: assets/main/import/09/09f53264-cd95-4751-99ad-d516c164dd80._cconb.dbbin, status: 40相关推荐

  1. SpringBoot微服务项目报错:Failed to process import candidates for configuration class [springfox.boot...

    具体错误: [main] ERROR org.springframework.boot.SpringApplication - Application run failed org.springfra ...

  2. Failed to process import candidates for configuration class [cn.zlc.eurekaservice.EurekaServiceAppl

    1.问题描述:在一个项目中添加了一个eureka注册中心服务端子模块,eureka模块依赖为在这里插入代码片 <?xml version="1.0" encoding=&qu ...

  3. STM32 的 JLink 调试时「Flash Timeout」和「Flash Download Failed」问题解决

    前天(7月12号)晚上从学弟手里拿到了一套神舟三号 STM32 板子,学弟说这个板子「时好时坏」的,有时候下不进去程序.我本来有一个 CEPARK 的板子,但是一直对神舟的板子很感兴趣,准备第二天试一 ...

  4. 手游pubg mobile服务器正在维护,PUBG Mobile Download Failed怎么解决

    <PUBG Mobile>国际服出现下载失败的情况,你将会收到"Download Failed"提示,你就需要按照下述的方法去解决该问题. 注意:如果下载不了 请复制浏 ...

  5. Download failed : Oracle JDK 7 is NOT installed,解决oracle jdk7的问题

    Download failed : Oracle JDK 7 is NOT installed,解决oracle jdk7的问题 参考文章: (1)Download failed : Oracle J ...

  6. Keil出现Error:Flash Download failed - Could not load file

    Keil 文件刚打开可能会出现Error:Flash Download failed - Could not load file 应该进行编译再下载,可能就会解决类似问题: 此外仿真时代码改动后应该先 ...

  7. IPPICV: Download failed: 6;“Couldn‘t resolve host name“

    windows10+opencv+cmake cmake编译opencv遇见下列错误的解决方法 CMake Warning at cmake/OpenCVDownload.cmake:193 (mes ...

  8. ST-LINK下载程序出现flash download failed - ‘cortex m4‘

    ST-LINK下载程序出现flash download failed - 'cortex m4' 可能原因:项目测试时使用ST-link下载程序调试,之前都好好的可以下载程序,之后可能做掉电存储等一些 ...

  9. 填坑记1-nrf52840出现error flash download failed -cortex-M4错误的解决办法-清风电子开发板

    填坑类型: nrf52840出现error flash download failed -cortex-M4错误 使用板子:清风电子开发板 问题描述: keil4出错,keil5不出错(意思是其他ke ...

最新文章

  1. OWASP Webgoat 安装和使用
  2. 第一章计算机基础知识第一节,第一章 计算机基础知识 第一节
  3. 解决VS2015 VBCSCompiler.exe 占用CPU100%的问题
  4. View结合组策略进行应用程序下发
  5. stylus之混合书写(Mixins)
  6. 【POJ - 2096】Collecting Bugs(概率dp)
  7. base64 编码 在websocket协议中的应用
  8. c语言随机函数生成字符,c语言随机数生成加减乘除 用C语言编程随机产生一道......
  9. Solidity 教程
  10. 计量经济学学习笔记:多元线性模型
  11. java导出文件到excel文件怎么打开_java导入、导出Excel文件
  12. 慕课网-哒哒租车系统
  13. UGeek大咖说 | 精彩回顾:京东商城可观测性体系的落地与实践
  14. LRU算法,走迷宫,数根,星际战争
  15. uva1593代码对齐
  16. 什么轴的机械键盘声音小
  17. 彩票开奖结果查询接口介绍
  18. 大数据云计算学习路线
  19. rg1 蓝光危害rg0_LED灯具蓝光危害评估方法
  20. [附源码]Python计算机毕业设计餐厅订餐系统

热门文章

  1. Python 免费教程视频-微软教学
  2. 陷波滤波器——周期性降噪
  3. 用计算机处理文字单元设计,计算机应用基础单元设计62(处理图像).doc
  4. 好好说话之Chunk Extend/Overlapping
  5. BUPT OJ143 Triangle
  6. win7纯净版安装mysql_win7旗舰版64位安装mysql
  7. 动图文件太大怎么办?一招教你在线压缩GIF图片
  8. shell编程99乘法口诀
  9. 汤家凤_定积分的计算
  10. 十二经纳干支歌,十二经纳地支歌