1

所以我有一个问题。当使用 Sound JS 和 WebAudio 插件时,每当我createInstance第二次访问同一个音频文件时,都不会发出第二次请求。因此createInstance,在第一次调用该声音文件时对该声音文件发出 http 请求,但随后,每当我createInstance再次使用相同的 src 调用时,音频文件都会从缓存中获取,并且不会发出无用的请求。

这很棒。但是,在使用 Cordova 插件时,似乎createInstance总是会请求音频文件。它永远不会被缓存。我知道这是因为每次播放声音时,在听到音频之前都会有一定的延迟。WebAudio 也是如此,但仅在初始播放时,之后立即播放。

我相信这是因为,在 Cordova 插件中,当调用 时createInstance_playbackResource总是创建为new Media(),正如这里的文档所说http://docs.phonegap.com/en/edge/cordova_media_media.md.html。所以我猜 Cordova Media 插件中没有内置的内部缓存机制?所以每次调用时new Media(src),虽然 src 已经加载,但 Android 每次都会向服务器发出一个新请求。

这些是有效的点吗?如果是这样,那么解决方案是什么?使用 Cordova 插件时,我应该保留所有实例的池吗?

谢谢。

4

0 回答 0