2011-09-22 31 views
1

是否可以使用HTML5缓存清单为移动网络应用中的离线访问缓存音频文件? 我也不明白尺寸限制是如何工作的。 (我读了iOS的5MB限制) 我没有找到相关资源或最佳实践。移动网络应用程序和离线访问音频文件

感谢您的帮助

+0

另请参阅http://stackoverflow.com/questions/2970062/will-html5-support-the-access-of-offline-cached-audio和http://stackoverflow.com/questions/1612116/html5-local -storage-of-audio-element-source-is-it-possible –

+0

感谢大卫指出这些 –

回答

0

是的 - 这是在应用程序缓存中列出的所有文件都通过浏览器,如果他们是HTML文件,JavaScript,或音频文件缓存,不管。只要它们在CACHE部分中明确提到,它们就可以脱机使用。

对于一个很好的AppCache教程,请查看http://www.html5rocks.com/en/tutorials/appcache/beginner/,它会引导您了解您应该需要的一切。

大小限制可防止您在用户计算机上存储太多内容。在大多数情况下,如果您只是存储HTML,CSS,JavaScript和一些图像,这不是问题,但就您而言,如果您要存储音乐,则可能会很快达到此限制。大多数浏览器限制您存储最大5 megs(针对所有内容),因此您需要注意这一点。

Chrome在调试appcache时有很多工具,当你在开发你的站点时,打开开发工具并观察控制台看看会发生什么。

+0

谢谢你。 我认为这个5M限制不是一个真正的限制,因为用户会被警告并询问他是否想要将限制提高5M。是对的吗 ? –

+0

没问题 - 有些浏览器会提示,但其他浏览器不会。例如,移动浏览器通常不会提示,如桌面所示。 – PeteLe

+1

这个答案与之前的SO帖子有冲突,像这样:http://stackoverflow.com/questions/2970062/will-html5-support-the-access-of-offline-cached-audio。这些帖子是否过时,还是你在做一些不同的事情?我希望你是对的! – Crashalot

0

通过缓存清单文件缓存音频文件仍然无法在5.1版以前的Android手机上使用。我不能说Android 6或iPhone,iPad,因为我没有这样的设备。但我在Android 5.1和Android 3上使用了大小仅为2 Kb的mp3文件,并且它们没有被缓存在这些手机上,而200 Kb的js文件被缓存。

当前的解决方案似乎是用base 64编码mp3文件,并将其放入可以缓存的js文件中。这个很好的描述可以在http://grinninggecko.com/2011/04/09/html5-offline-audio/找到。

相关问题