cocos2d-js可以直接解压运行本地zip么

在做cocos2d-js热更新的时候,是可以下载到热更新地址上的zip文件,然后直接解压运行的。不过现在项目里有个需求是,zip文件已经通过其他方式下载到本地了,cocos2d-js需要直接解压运行这个zip,看了下AssetsManager里面的处理,基本上都是在C++里面解压的,js好像没绑定相应的接口,我在想需要绑定哪几个方法才能实现这个需求啊,有了解的么,,挺急的,在线等(认真脸~)

同问……

可以的 你看热更新的代码里面不是有一个解压的代码么 复制出去 写成一个方法 建立一个JSB绑定 就可以了

嗯,我之前也这样想的,AssetsManager里有看到这个方法,


在AssetsManagerEx里看到这个方法,

cocos2d-x3.13版本的是不是用的前面的那个啊

我发现明明关注了本帖,你们回复,我在右上角竟然没有提示了,还特意翻回去找了自己的帖子

看了下jsb-binding,果然还是走的AssetsManagerEx里的方法,我去绑定试试看,好不好使

用EX里的就可以了

嗯,把那个decompress的方法提出来修改了下,现在可以用啦,,之前一直报can not create decompress destination file,原来是要把文件放到可写路径里面。

你好,楼主,我也遇到这个需求了,cocos 需要加载本地已经下载好的 zip 文件。
我想问下你的解决方案。
我本人是 android 开发,不懂cocos,实现这个需求是老板让实现的。

我找到了你说的 AssetsManager 和 AssetsMangerEx 中的方法,但是我没有找到 jsb-binding,也不清楚是怎么样绑定,怎么样实现。

楼主如果还记得的话,可以把你实现的这部分源码发我一下吗,我对照改一下。

谢谢了,不胜感激。。

js绑定是一个流程 你在这个论坛搜索的到的
附教程地址
http://forum.cocos.com/t/js-c-jsb-jsbinding/37909

我试着根据楼主的另一篇博客 cocos2d-js直接解压运行本地zip文件, 改了下我本地文件,现在遇到一个问题是,运行后,AssetsManagerEx.cpp 中的decompressLocalZip 方法报错。
错误是 “ AssetsManagerEx : can not open downloaded zip file ”,我不太知道怎么修改。
我想问一下,你那个 zip 文件中的有哪些文件。:joy:
AssetsManagerScene 中需要改什么吗?

如果可以的话,还是能够给看下你写的那个 demo 吗。