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

Html 缓存清单大小限制和Web应用程序,html,web-applications,offlineapps,Html,Web Applications,Offlineapps,我正处于编写应用程序的规划阶段,仍然在选择我希望用来编写应用程序的技术。最初的想法是编写一个web应用程序,但这已经导致了无法离线查看的失败。然后我发现了缓存清单,这可能是一个答案 然而,从第一点开始,缓存清单似乎有大小限制。我找不到每个浏览器的大小限制的完整列表,所以我不知道它是否会完全削弱(尽管我认为可能是)。我希望该应用程序能够在Firefox、Chrome和mobile Safari浏览器上运行(也就是说,它必须在iPad上运行) 我的理解是,在大多数情况下,总缓存限制约为5MB(不同浏

我正处于编写应用程序的规划阶段,仍然在选择我希望用来编写应用程序的技术。最初的想法是编写一个web应用程序,但这已经导致了无法离线查看的失败。然后我发现了缓存清单,这可能是一个答案

然而,从第一点开始,缓存清单似乎有大小限制。我找不到每个浏览器的大小限制的完整列表,所以我不知道它是否会完全削弱(尽管我认为可能是)。我希望该应用程序能够在Firefox、Chrome和mobile Safari浏览器上运行(也就是说,它必须在iPad上运行)

我的理解是,在大多数情况下,总缓存限制约为5MB(不同浏览器的缓存限制有所不同),但这还不足以满足我的需要。我希望离线存储所有用户的在线数据。这包括上传的文件(PDF、图片)以及应用程序实际运行所需的内容。在我所看到的任何示例中,缓存清单只用于缓存离线内容,如html、css、javascript和网站的图像资源。是否适合离线存储用户上传的PDF

如果这个问题的答案是响亮的“不”(我担心可能是这样),还有其他解决办法吗?或者,浏览器中的“适当”应用程序(即具有合理空间要求的应用程序)目前完全不可行?我们是否仍在等待浏览器跟上发展的要求


编辑:只是补充一下,我知道HTML5规范中对缓存清单没有限制,但是实现似乎都限制了它,这将影响我尝试编写的任何内容。

根据规范没有限制,但我相信限制超过5MB。另请参见

您可以在此处查看有关限制容量的更多信息:

以防人们仍然对此感到疑惑

我目前有一个44MB的应用程序,成功下载并在Safari(6.1)、Chrome(31)、Firefox(26)、iPad(ios7)和iPhone(ios6)上离线测试


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

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

其他设备(iphone、windows、blackberry等)不会出现同样的问题

移动

| 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 |

对不起,我将把这个添加到原件中。我已经研究过,并且知道没有规格限制。这并不意味着在实践中没有限制!关于5MB,这是我从维基文章中得出的数字(在某些浏览器中也表明它是10MB),我在chrome中实现了appcache大小,从op到12MB。我还在iOS设备上做了一个测试:你是如何绕过5MB限制的,你的浏览器允许增加它吗?