如何恢复WKWebView及其历史记录?

时间:2016-05-15 16:49:02

标签: ios nsuserdefaults wkwebview

之前我问过这个问题,我得到了两个答案:

  1. It's impossible, don't forget to file a bug report!

  2. It's possible by messing around with localhost requests.

  3. 引自Stefan Arentz

      

    这里没有简单的答案。 WKWebView无法存档   也没有参与UI状态保存/恢复。您   已经发现了这个。

         

    对于Firefox for iOS,我们采用了不同的方法来解决这些问题   限制。这远非理想,但确实有效。

         

    当我们恢复包含会话信息的标签时(以前访问过的网页)   附加,我们从本地Web服务器加载一个特殊的html页面(运行   在localhost上修改页面的推送状态并推送   以前访问历史堆栈中的URL。

         

    因为这些URL需要来源相同,所以我们基本上推送网址   比如`http://localhost:1234/history/item?url=http://original.url.com

         

    在我们的用户界面中,我们将其翻译为显示original.url.com。当用户   回到历史中加载这些,我们拦截而不是   从localhost加载页面,我们加载原始页面。

         

    这是一个很大的黑客,但这就是我们现在所拥有的一切。

    问题是,我下载了适用于iOS的Firefox应用,并测试了它是否还原了一个标签。我发现在关闭应用程序并重新打开它之后,所有内容都将丢失。回去的选择不存在。

    这对我和我正在构建的网络浏览器来说是一个大问题。所以,我希望得到第三个答案,一个更好的解决方案。我确实感到乐观,因为已经过去了一年多。

    由于性能不佳,不能再使用 UIWebView

0 个答案:

没有答案