我正在构建一个 iPad 应用程序以在公共(public)多用户场景中使用,并希望允许临时 Web 浏览 session 。但是,当 session 结束时,我希望应用清除所有隐私浏览数据,包括缓存、cookie 和历史记录。
我已经想出了如何清除缓存和 cookie,但我无法了解历史记录。
为了清楚起见,我不想清除 UIWebView 的后退/前进历史记录(我每次都创建一个新的 UIWebView 实例,以便不是问题)。我希望清除整个应用程序的浏览历史记录,这样链接就不会显示为已访问。
例如,如果我在 Google 上搜索某项内容并访问其中一个匹配项,那么下次我在 Google 上搜索该链接时,该链接会变为紫色。我希望删除所有历史记录和过去的网页,以便在重置浏览 session 后没有链接保持紫色。
或者,如果我可以完全禁用历史记录跟踪(例如 Chrome 或 Firefox 的“隐私浏览模式”),那也是可以接受的。
更新:有趣的是,我注意到退出并重新启动应用程序会隐式清除浏览历史记录,并且链接在启动时再次显示为蓝色。 然而,不幸的是,这对我没有任何帮助,因为该应用程序的设计目的是在许多用户之间长时间运行。我们无法在每次 session 后退出应用程序。
更新 2: 进一步的实验表明,网络历史肯定是在每个应用程序的基础上维护的。我在 Safari 中搜索了相同的内容,每次在我的应用程序中显示为紫色的链接在 Safari 中显示为蓝色。必须有一种方法可以从应用程序内访问此本地存储。
Best Answer-推荐答案 strong>
如果你愿意使用私有(private)框架,这里有一个讨论:How to clear back forward list in UIWebview on iPhone?
如果这不适合您,那么我能想到的唯一其他选择就是删除 web View ,然后重新创建它。
关于ios - 如何清除/禁用 UIWebView 的浏览历史记录,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/19735735/
|