download failed: assets/main/import/09/09f53264-cd95-4751-99ad-d516c164dd80._cconb.dbbin, status: 40
错误截图:
错误原因
将 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相关推荐
- SpringBoot微服务项目报错:Failed to process import candidates for configuration class [springfox.boot...
具体错误: [main] ERROR org.springframework.boot.SpringApplication - Application run failed org.springfra ...
- Failed to process import candidates for configuration class [cn.zlc.eurekaservice.EurekaServiceAppl
1.问题描述:在一个项目中添加了一个eureka注册中心服务端子模块,eureka模块依赖为在这里插入代码片 <?xml version="1.0" encoding=&qu ...
- STM32 的 JLink 调试时「Flash Timeout」和「Flash Download Failed」问题解决
前天(7月12号)晚上从学弟手里拿到了一套神舟三号 STM32 板子,学弟说这个板子「时好时坏」的,有时候下不进去程序.我本来有一个 CEPARK 的板子,但是一直对神舟的板子很感兴趣,准备第二天试一 ...
- 手游pubg mobile服务器正在维护,PUBG Mobile Download Failed怎么解决
<PUBG Mobile>国际服出现下载失败的情况,你将会收到"Download Failed"提示,你就需要按照下述的方法去解决该问题. 注意:如果下载不了 请复制浏 ...
- 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 ...
- Keil出现Error:Flash Download failed - Could not load file
Keil 文件刚打开可能会出现Error:Flash Download failed - Could not load file 应该进行编译再下载,可能就会解决类似问题: 此外仿真时代码改动后应该先 ...
- IPPICV: Download failed: 6;“Couldn‘t resolve host name“
windows10+opencv+cmake cmake编译opencv遇见下列错误的解决方法 CMake Warning at cmake/OpenCVDownload.cmake:193 (mes ...
- ST-LINK下载程序出现flash download failed - ‘cortex m4‘
ST-LINK下载程序出现flash download failed - 'cortex m4' 可能原因:项目测试时使用ST-link下载程序调试,之前都好好的可以下载程序,之后可能做掉电存储等一些 ...
- 填坑记1-nrf52840出现error flash download failed -cortex-M4错误的解决办法-清风电子开发板
填坑类型: nrf52840出现error flash download failed -cortex-M4错误 使用板子:清风电子开发板 问题描述: keil4出错,keil5不出错(意思是其他ke ...
最新文章
- OWASP Webgoat 安装和使用
- 第一章计算机基础知识第一节,第一章 计算机基础知识 第一节
- 解决VS2015 VBCSCompiler.exe 占用CPU100%的问题
- View结合组策略进行应用程序下发
- stylus之混合书写(Mixins)
- 【POJ - 2096】Collecting Bugs(概率dp)
- base64 编码 在websocket协议中的应用
- c语言随机函数生成字符,c语言随机数生成加减乘除 用C语言编程随机产生一道......
- Solidity 教程
- 计量经济学学习笔记:多元线性模型
- java导出文件到excel文件怎么打开_java导入、导出Excel文件
- 慕课网-哒哒租车系统
- UGeek大咖说 | 精彩回顾:京东商城可观测性体系的落地与实践
- LRU算法,走迷宫,数根,星际战争
- uva1593代码对齐
- 什么轴的机械键盘声音小
- 彩票开奖结果查询接口介绍
- 大数据云计算学习路线
- rg1 蓝光危害rg0_LED灯具蓝光危害评估方法
- [附源码]Python计算机毕业设计餐厅订餐系统