[]最新的ResourceVersion发布以后加载的url不正确

一个工程在IDE下直接播放是可以运行的。
 我使用最新的ResourceVersion,在资源后增加了Hash后缀,比如某个文件发布后:
release\web\res\atlas\ui\sharedcp094faf36.png
加上了094faf36的后缀
 
然后我启动游戏的流程如下:
ResourceVersion.enable(
    "version.json?" + Math.random(),
    Handler.create(this, this.onVersonLoaded));
 
然而发布的游戏启动后发现加载失败,查看日志发现加载的URL拼得不对:

QQ截图20180115210658.png

 
它加载使用的路径是一个奇怪的:
http://localhost/h5/res/atlas/ui/sharedcpf27ce0f7.atlas/res/atlas/ui/shared.atlas
 
同时在IDE启动的时候,也会碰到一个错误但是不影响游戏运行:

[warn]Retry to load: version.json?0.9911664351059268
[error]Failed to load: version.json?0.9911664351059268
资源版本清单文件不存在,不使用资源版本管理。忽略ERR_FILE_NOT_FOUND错误。
 
已邀请:

demibug

赞同来自:

这个功能一直有问题 估计他们自己都没用过 解决办法是自己改引擎代码

watsonsong

赞同来自:

用的是官方才发布的流程,结果就不对了。有办法直接改吗,你是直接改lib里面?

watsonsong

赞同来自:

ResourceVersion.type = ResourceVersion.FILENAME_VERSION;
我看文档里面有这个设置,但是最新版本的IDE环境里面没有找到这个定义的存在~

watsonsong

赞同来自:

我疑惑的是ResourceVersion上面没有type这个属性,API感觉对不上。不知道是不是我哪里没有搞对还是怎么的,和文档的API有出入。

QQ截图20180117101347.png


QQ截图20180117101355.png

 

tangjianft

赞同来自:

使用这个正确
//激活资源版本控制
ResourceVersion.enable("manifest.json?"+Math.random(), Handler.create(this, beginLoad), ResourceVersion.FOLDER_VERSION);    
 

/**基于文件夹的资源管理方式(老版本IDE默认类型)*/
        public static const FOLDER_VERSION:int = 1;
        /**基于文件名映射管理方式(新版本IDE默认类型)*/
        public static const FILENAME_VERSION:int = 2;
 

要回复问题请先

商务合作
商务合作