【问题标题】:WebAudio does not play and delays loading progress on iOS7 / iPadWebAudio 在 iOS7 / iPad 上不播放并延迟加载进度
【发布时间】:2014-01-27 13:52:34
【问题描述】:

我已经构建了一个包含视频和音频(点击即可)的网络应用程序。 该应用程序使用 applicationCache 将所有文件存储在装有 iOS7 的 iPad 上。

视频在缓存(离线)版本中完美运行!

唯一(大)问题是,音频文件已加载但无法播放。 我已经阅读了很多关于这方面的一些问题,但我没有发现是否可以播放缓存的音频文件。

对于我正在使用 createjs 的网络应用程序(带有 preloadjs 和声音)。

我还认识到,当音频文件开始加载(离线,使用 preloadjs)时,它会在控制台中出现以下错误(来自 iPad):

SyntaxError: DOM Exception 12: An invalid or illegal string was specified.

…对于每一个音频文件 (mp3)。

它会大大延迟(预)加载进度/过程。

我怎样才能摆脱这种延迟?如何正确运行音频文件? 如果在 iPad/iOS7.1 上无法“播放音频”,是否有任何事件或检测,告诉我音频不可用……这样我就可以输出类似“请连接到互联网才能听到”的警报音频文件”?

提前谢谢!

【问题讨论】:

    标签: ios ipad audio application-cache


    【解决方案1】:

    PreloadJS 的问题听起来像是失败超时,当尝试加载文件但没有收到响应时会发生这种情况。如果从 applicationCache 加载音频工作,我还没有听说过一种或另一种方法,但听起来 PreloadJS 试图从外部加载它而不是从 appCache 加载它。这可能与 WebAudio 需要使用 XHR 加载音频有关,而视频会使用标签。

    这是一个related post,可能有一些答案。

    希望对您有所帮助。

    【讨论】:

    • 我个人喜欢 mp4,但它可能不会对您看到的问题产生任何影响。
    • 我已将所有 mp3 更改为 mp4。我用视频标签播放它们。它在缓存的 iPad WebApp 上运行良好。所以这是一个很好的解决方法!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多