保存WKWebView(iOS)的状态

时间:2017-07-01 01:49:35

标签: ios memory wkwebview

我目前正在开发一个同时运行多个WKWebViews的应用程序,想一想浏览器中的选项卡,但是如果我有大约5个WKWebView实例运行至少其中一个将变为空白并在某个时刻显示白色屏幕。我确信这与在我无法控制的后台进行的一些内存管理有关。

我的问题是:如果我想在切换屏幕之间保存WKWebView的状态,我该怎么做呢?

我最初的想法是将HTMLCSSJavaScript保存到某种本地存储空间,并使用" cached"重新加载页面。在完全重新加载页面之前的内存。

我一直在关注Chrome的开源项目,看起来他们正在使用Objective-C ++,但我不确定原因。

如果有人对此有任何想法或知识,我们将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:1)

你的问题不够明确,无论如何让我给你一些建议, 即使你在5个WKWebviews之间切换,它们的状态也会保持不变,所以不需要手动保存状态。

关于普通网页加载时的问题:

实施,

- (void)webView:(WKWebView *)webView 
didFailProvisionalNavigation:(WKNavigation *)navigation 
      withError:(NSError *)error;

在此方法内部,只要加载失败,就会重新加载webview。