热更断点续传问题

在热更的时候切换网络或者直接退出游戏,再次打开热更就会UPDATE_FAILED,到更新失败。因为版本号也改了,热更又失败,客户端只能卸掉重新下载。热更不是有断点续传吗?是服务器需要支持断点续传?我有的cc版本1.3.1的,是热更没有重构前的。

你好,热更新失败后是有断点续传的功能,在切换网络或者退出游戏再进入时,恢复网络的情况下会先提升文件加载失败,然后点击重新加载按钮后可以继续加载之前失败的文件,并完成热更新操作。你目前的creator版本1.3.1属于比较老的版本,建议使用新版本1.6.1。

断点续传支持依赖于服务器,服务器不支持的话,是没办法做到续传的,而且在重构前的版本中如果服务器不支持续传会有 bug

download:function()
{
HotUpdate.is_realdown =false;
var storagePath = (jsb.fileUtils? jsb.fileUtils.getWritablePath():"");

    this._am = new jsb.AssetsManager(this.manifestUrl, storagePath);
    this._am.update();
    this._am.retain();

    if (this._am.getLocalManifest().isLoaded())
    {
        this._checkListener = new jsb.EventListenerAssetsManager(this._am, this.checkCb.bind(this));
        cc.eventManager.addListener(this._checkListener, 1);
    }
},

这个是我客户端的代码,每次有热更都会去执行这个download,this.manifestUrl是manifest文件。这样直接调用jsb.AssetsManager的update也是可以的吧

我们项目已经上线了,现在项目的更新一直在用热更。换个creator版本要重新提交包去审核,上次因为苹果4.3被拒好多次,所以就尽量不提交更新包

直接 update 可以,但是你要先设置 listener

@panda 我看错了 是ERROR_UPDATING,资源更新错误,比对每个文件的时候都是这个

中断再次更新后出现这个,这临时文件会被删除么?

能说下后来是怎么上架成功的吗?

加了很多垃圾代码,改了大部分资源名字,提交新项目改成了提交升级包。搞得对提交审核都有阴影了。。

多谢,偶也是郁闷的不行