如何防止WKWebView在应用程序发送到后台后被清空

How to prevent WKWebView from being emptied after app sent to background

我正在开发一个使用 WKWebView 呈现网页内容的应用程序。 到目前为止一切正常,除了一件事:如果我在我的 WKWebView 上加载一个页面然后将应用程序发送到后台一段时间(我想大约十分钟)然后重新打开应用程序,我的 WKWebView 为空。

我猜它会自动清空以防止内存浪费,但是 Safari 或 Chrome 怎么做才能将网页内容保留在内存中?

简答:你不能。

我的猜测是您的应用程序实际上在暂停时被终止,而您正在重新启动。你也无法阻止。

如果系统需要内存,它会向您的应用发送低内存应用委托消息和通知。如果 WKWebView 收到低内存通知,它可能会订阅该通知并清除页面。