audio.loadSound 加载音频文件是否同步进行?

我正在开发一个严重依赖 Corona SDK 音频 API 的游戏。游戏需要加载几个音频文件 (wav 格式) 和一个相对较大的背景音乐文件(+15mb)。考虑到 Corona 的指南中提到的一句话,我不想使用流式传输文件。

请注意,使用流式传输文件可能会比使用 audio.loadSound() 加载文件更耗费延迟和 CPU 资源。

我使用 Composer API,并计划基于事件循环来开发加载屏幕。

我的问题是,如果我将所有的 loadSound() 放到 create 事件处理程序中,它们是否会同步加载,然后在所有音频文件加载完毕后,才会触发 show 事件?还是我应该为我的加载屏幕使用另一种方法?

点赞
用户756383
用户756383

是的,我相信它们是同步加载的。

在我的应用中,如果有更大的背景音乐文件,加载屏幕将在较慢的设备上需要更长的时间。因此,它会阻塞直到加载完成。

我想这是因为如果它是异步的,则没有“查询”机制或回调可用于加载音频时。

但是不要听我的,自己测试一下。

PS:你的解决方案似乎很可靠,这就是我所做的。

2016-03-16 17:19:32