缓存清单大小限制和Web应用程序

问题描述 投票:25回答:5

我正处于编写应用程序的计划阶段,仍然选择我希望用来编写应用程序的技术。最初的想法是写一个网络应用程序,但这已经(有?)无法离线查看的垮台。然后我发现了缓存清单,这似乎是一个答案。

但是,从第一点开始,似乎Cache Manifest存在大小限制。我找不到每个浏览器的大小限制的完整列表,所以我不知道它是否完全令人虚弱(尽管我认为它可能是)。我希望该应用程序可以使用的浏览器是Firefox,Chrome和移动Safari浏览器(也就是说,它必须在iPad上运行)。

我的理解是,在大多数情况下,总缓存限制大约为5MB(从浏览器到浏览器不等),但这对我的需求来说还不够。我希望离线存储所有用户的在线数据。这包括上传文件(PDF,图片)以及使应用程序在物理上工作所需的内容。在我看过的任何一个例子中,cache-manifest仅用于缓存离线内容,如html,css,javascript和网站的图像资源。是否适合用户上传的PDF的离线存储?

如果这个问题的答案是响亮的(我担心它可能是),还有其他解决方案吗?或者是浏览器中的“正确”应用程序 - 即具有合理空间要求的应用程序 - 此时完全不可行?我们还在等待浏览器赶上开发的要求吗?

编辑:只是添加,我知道HTML5规范中的Cache-Manifest没有限制,但实现似乎都限制了它,这将影响我尝试编写的任何内容。

html5 web-applications offlineapps
5个回答
8
投票

您可以在此处查看有关限制容量的更多信息:http://grinninggecko.com/developing-cross-platform-html5-offline-app-1/


2
投票

万一人们还在想这个......

我目前在Safari(6.1),Chrome(31),Firefox(26),iPad(ios7)和iPhone(ios6)上成功下载并测试了44MB资源的应用程序。

我发现的唯一问题是当您将应用程序添加到主屏幕时。我已经确定这是因为应用程序太大而且需要扩展缓存,但是没有处理这个并且它只是以错误结束。解决方法 - >重新加载应用程序。关闭,打开和重新保存缓存=工作。


0
投票

根据spec没有限制,但我相信限制超过5 MB。另见Is there a size limit for HTML5 Manifest?


0
投票

Android设备中的Appcache大小限制为5 MB。如果要为Android设备创建混合应用程序,则需要确保appcache不超过5MB。否则,appcache下载一旦达到大小限制就会失败。

其他设备(iPhone,Windows,黑莓等)也不会出现同样的问题。


0
投票

移动

| Chrome | Android Browser | Firefox | Safari | Safari | iOS WebView | iOS WebView |
|   40   |       4.3       |   34    |   6,7  |   8    |     6,7     |      8      |
|    ~   |        ∞        |    ∞    |  300MB | 300MB  |    100MB    |    100MB    |

桌面

| Chrome | Firefox |   Safari   |   Safari  |   IE   |   IE   |
|   40   |    34   |     6,7    |     8     |    9   |  10,11 |
|    ~   |  500MB  |      ∞     |     ∞     |    ?   |  100MB |

Reference Link

© www.soinside.com 2019 - 2024. All rights reserved.