【问题标题】:Clearing the application cache for websites that you "Add to your Home screen" on the iPad清除您在 iPad 上“添加到主屏幕”的网站的应用程序缓存
【发布时间】:2011-10-24 18:14:59
【问题描述】:

问题:我已经尝试了我能想到的所有方法来清除已添加到我的主屏幕的网站的缓存。这是我尝试过的。

  1. 双击主屏幕关闭所有正在运行的 web 应用实例。
  2. 关闭所有 Safari 实例。
  3. 从主屏幕中删除了 web 应用程序。
  4. 设置 -> Safari -> 清除缓存和历史记录。

在 Safari 中,缓存已全部清除,我看到了我的网络应用程序的最新版本。但是,一旦我将它添加到主屏幕,它将显示旧版本。如果我在 url 上附加一个“#”,它将只加载新的 html 文件,但是看起来所有的 css 包含仍然被缓存。

有什么想法吗?谢谢!

【问题讨论】:

  • 这让我抓狂!我试图调试一个视频页面,全屏视图有问题。所有其他浏览器和设备均已修复,但 iPad 的 Safari 保留了该错误。当我意识到刷新和清除 cahce 并没有帮助,而是更改为另一个 URL 时,我已经浪费了 2 个小时的工作日。

标签: ipad safari webkit


【解决方案1】:

将 iPad 的日期设置为未来几天,然后重新打开网络应用程序。然后它会正确地重新加载它。之后,您可以将日期重置为当前日期。 很奇怪,Apple 应该关心这个...

【讨论】:

  • 更简单的答案。工作。 +1
  • 在 iPad Mini、iOS 6 上为我工作!
  • 在生产中没用
【解决方案2】:

如果您使用的是缓存清单文件,请确保更改 .manifest 文件中的某些内容以触发缓存刷新。

【讨论】:

【解决方案3】:

如果您可以更改被添加书签的 URL 的子目录(例如,将 www.mysite.com/test1 更改为 www.mysite.com/test2),然后将该站点重新添加到应该也可以工作的主屏幕。

【讨论】:

    【解决方案4】:

    使用 Lukas 提到的日期技巧后,将一些元标记添加到您的 html 的 <head> 部分,以确保它在未来轻松重新加载:

    <meta http-equiv="cache-control" content="max-age=0" />
    <meta http-equiv="cache-control" content="no-cache" />
    <meta http-equiv="expires" content="0" />
    <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
    <meta http-equiv="pragma" content="no-cache" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-30
      • 2013-09-05
      • 2013-08-21
      • 2012-10-29
      • 1970-01-01
      • 2011-12-25
      • 1970-01-01
      相关资源
      最近更新 更多