保存 WKWebView 的状态 (iOS)
Save the state of a WKWebView (iOS)
我目前正在开发一个同时具有多个 WKWebViews
运行 的应用程序,想想浏览器中的选项卡,但似乎如果我有大约 5 个 WKWebView
实例运行 其中至少有一个会在某个时候变成空白并显示白屏。我确信这与我无法控制的后台内存管理有关。
我的问题是:如果我想在切换屏幕之间保存 WKWebView
的状态,我该怎么做?
我最初的想法是将 HTML
、CSS
和 JavaScript
保存到某种本地存储,然后使用之前的 "cached" 内存重新加载页面重新加载页面。
我一直在查看 Chrome 的开源项目,他们似乎在用 Objective-C++ 做一些事情,但我不确定为什么。
如果有人对此有任何想法或知识,将不胜感激,谢谢!
你的问题还不够清楚,总之我给你提点建议吧,
即使您在 5 个 WKWebview 之间切换,它们的状态将保持不变,因此无需手动保存状态。
关于加载时的普通网页问题:
实施,
- (void)webView:(WKWebView *)webView
didFailProvisionalNavigation:(WKNavigation *)navigation
withError:(NSError *)error;
在此方法中,每当加载失败时重新加载 webview。
我目前正在开发一个同时具有多个 WKWebViews
运行 的应用程序,想想浏览器中的选项卡,但似乎如果我有大约 5 个 WKWebView
实例运行 其中至少有一个会在某个时候变成空白并显示白屏。我确信这与我无法控制的后台内存管理有关。
我的问题是:如果我想在切换屏幕之间保存 WKWebView
的状态,我该怎么做?
我最初的想法是将 HTML
、CSS
和 JavaScript
保存到某种本地存储,然后使用之前的 "cached" 内存重新加载页面重新加载页面。
我一直在查看 Chrome 的开源项目,他们似乎在用 Objective-C++ 做一些事情,但我不确定为什么。
如果有人对此有任何想法或知识,将不胜感激,谢谢!
你的问题还不够清楚,总之我给你提点建议吧, 即使您在 5 个 WKWebview 之间切换,它们的状态将保持不变,因此无需手动保存状态。
关于加载时的普通网页问题:
实施,
- (void)webView:(WKWebView *)webView
didFailProvisionalNavigation:(WKNavigation *)navigation
withError:(NSError *)error;
在此方法中,每当加载失败时重新加载 webview。