2.0.10 web端 资源加载问题

如果场延迟加载,进入场后,动态加载资源,未加载完成就回调,使用的API:cc.loader.loadResDir 和 cc.loader.loadRes

提供下复现demo,我们分析看看,谢谢~

有3个问题,顺手整理一下,麻烦大佬也看一下哈~ (windown系统,cocos creator 版本:2.0.10)
1.安卓原生环境(ios原生环境未验证),场景勾选“延迟加载资源”,进入场景调用 cc.audioEngine.playMusic 播放背景音乐,接着调用 cc.audioEngine.stopMusic 不能停止背景音乐。(直接用creator自带的模拟器运行,即可复现。)
NewProject1.rar (870.0 KB)

2.场景勾选“延迟加载资源”,进入场景后,场景直接引用到和间接引用到的资源,都被记录成已加载完成(cocos creator 版本:2.0.10,web端、安卓原生均会出现,ios原生没有验证。1.9.3 版本 cocos creator没有这个问题)
NewProject2.rar (1.1 MB)

3.调用 cc.audioEngine.playMusic 播放延迟加载的背景音乐,加载完成前调用cc.audioEngine.stopMusic 不能停止背景音乐(cocos creator 版本:2.0.10,web端)。
NewProject3.rar (868.7 KB)

@kenshin能复现吗

可以复现,在排查了~

好的,谢谢,三个问题都能复现吗?

cc.audioEngine.playMusic 存在问题,可以参考下面代码修复

这个问题已反馈内部处理。

还没处理好吗?

按照你说的那样改完后,延迟加载的背景音乐是能关闭,但是如果,播放背景音乐的时候,再播放一个音效,这时候背景音乐就不能关闭了。NewProject1.zip (945.4 KB)

JSB 是同样的问题,参考下面 或者升级到2.1.2版本 。

每个地方都有加

项目马上要上线了,不敢再更新新的版本了:sob:

先暂时这样处理吧,把要播放的声音都做下预加载~

cc.loader.loadRes(url, cc.AudioClip, function (err, clip) {
var audioID = cc.audioEngine.playEffect(clip, false);
});

音效停止这样处理的
cc.audioEngine.stopEffect(id);

那如果这样,就要把音效都移到resource目录下了?