保存和恢复 UIWebView 浏览会话
Posted
技术标签:
【中文标题】保存和恢复 UIWebView 浏览会话【英文标题】:Saving and restoring a UIWebView browsing session 【发布时间】:2012-09-28 19:51:10 【问题描述】:使用 UIWebView 类,是否可以在应用程序进入后台时保存浏览会话,然后在应用程序被激活或重新启动时完全恢复它?根据文档,UIWebView 类确实符合 NSCoding 协议,但归档 UIWebView 类的实例也会保留 cookie 和页面的 javascript 状态(也可能是 html5 本地存储),以便页面恢复时具有完全相同的外观和完全相同的功能?我的应用查看的页面包含大量分散的图形和 JavaScript,这些页面在蜂窝网络上加载时间过长,因此保存浏览会话将是一个非常非常好的改进。
【问题讨论】:
【参考方案1】:可能不会。甚至 Safari 也不这样做。
所有 UIView 类都符合 NSCoding 以支持从 nib 文件取消归档,以设置用户界面。这是一种特殊情况,而不是其他类存在的通用归档/取消归档机制。
您可能可以做一些事情:
保存并恢复滚动位置。 积极缓存数据;查看 URL 加载系统的文档,这是 UIWebView 使用的。默认情况下它会进行一些缓存,但我相信您可以对其进行调整以做更多的事情。 保存和恢复会话 cookie,它们通常会被丢弃(请参阅 HTTPCookieStorage)。【讨论】:
以上是关于保存和恢复 UIWebView 浏览会话的主要内容,如果未能解决你的问题,请参考以下文章