【问题标题】:iOS Clears HTML5 Offline Cached DataiOS 清除 HTML5 离线缓存数据
【发布时间】:2012-10-14 10:51:00
【问题描述】:

我们使用 .manifest 缓存机制开发了一个离线 HTML5 网络应用。一切都按预期工作。

现在我们的一些客户抱怨说,在长时间离线使用后,缓存的数据突然消失了。事实证明——这是我的猜测——iOS 将缓存文件存储在其 /CACHES/ 目录中,从 iOS 5.0 开始,如果设备空间不足,该目录可能会被清除。这可能随时发生,甚至不会向用户发出警告。因此,离线 web 应用程序不再正常运行。用户必须将设备重新连接到互联网并更新应用程序。

对于本机应用程序,此问题通过将文件存储在 /DOCUMENTS/ 目录中解决,使用标志“不备份”防止文件被清除(因为它们不位于 /CACHES/ 目录中,并且没有备份到 iCloud 或 iTunes。

查看此链接了解详情:http://www.marco.org/2011/10/13/ios5-caches-cleaning,但这并没有说明 HTML5 缓存...

这个再解释一遍,但没有解决方案:http://www.moneytoolkit.com/2012/04/apple-ios-html5-localstorage-is-broken/

有没有人有同样的经历?这个问题有方法解决吗?目标是安装一次网络应用程序,然后在没有连接的情况下“永远”运行它......

干杯,宝贝

【问题讨论】:

    标签: ios html offline-caching


    【解决方案1】:

    在 Safari 中无法解决这个问题。缓存永远不会被认为是永久性的。

    如果您在本机应用程序中有 UIWebView,则可以在用户默认值中将 WebKitStoreWebDataForBackup 设置为 YES。 (仅限 iOS 6+)

    【讨论】:

    • 嗨,Chirs,谢谢您的回答。是的,这就是我不希望听到的 ;-) 苹果应该改变这种行为......
    猜你喜欢
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 2010-11-15
    • 2015-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多