【发布时间】:2011-09-22 12:17:35
【问题描述】:
是否可以使用 HTML5 缓存清单在移动 Web 应用程序中缓存音频文件以供离线访问? 我也不明白大小限制是如何工作的。 (我阅读了 iOS 的 5MB 限制) 我没有找到相关资源或最佳做法。
感谢您的帮助
【问题讨论】:
是否可以使用 HTML5 缓存清单在移动 Web 应用程序中缓存音频文件以供离线访问? 我也不明白大小限制是如何工作的。 (我阅读了 iOS 的 5MB 限制) 我没有找到相关资源或最佳做法。
感谢您的帮助
【问题讨论】:
是的 - AppCache 中列出的所有文件都被浏览器缓存,无论它们是 HTML 文件、JavaScript 还是音频文件。只要在 CACHE 部分明确提及它们,它们就可以离线使用。
如需优秀的 AppCache 教程,请查看 http://www.html5rocks.com/en/tutorials/appcache/beginner/,它会引导您完成所需的一切。
大小限制可防止您在用户计算机上存储过多内容。在大多数情况下,如果您只是存储 HTML、CSS、JavaScript 和一些图像,这不是问题,但在您的情况下,如果您存储音乐,您可能会很快达到这个限制。大多数浏览器限制您最多存储 5 兆(对于所有内容),因此您需要注意这一点。
Chrome 有一套很棒的调试 appcache 的工具,在您开发网站时,打开开发者工具并观察控制台看看会发生什么。
【讨论】:
通过缓存清单文件缓存音频文件在 5.1 及以下版本的 Android 手机上仍然不起作用。我不能为 Android 6 或 iPhone、iPad 说话,因为我没有这样的设备。但我在 Android 5.1 和 Android 3 上尝试了 mp3 文件,大小仅为 2 Kb,它们没有缓存在这些手机上,而缓存了 200 Kb 的 js 文件。
目前的解决方案似乎是用base 64对mp3文件进行编码,并将其放入可以缓存的js文件中。可以在 http://grinninggecko.com/2011/04/09/html5-offline-audio/ 上找到一个很好的描述。
【讨论】: