【问题标题】:How to prevent WKWebView from being emptied after app sent to background应用发送到后台后如何防止WKWebView被清空
【发布时间】:2016-07-14 17:18:32
【问题描述】:

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

我猜它会自动清空以防止内存浪费,但是 Safari 或 Chrome 是如何将网页内容保留在内存中的呢?

【问题讨论】:

    标签: ios objective-c swift webkit wkwebview


    【解决方案1】:

    简短的回答:你不能。

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

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

    【讨论】:

    • 那么 Google 和 Apple 如何使用各自的浏览器呢?您是否认为他们会在应用程序变为非活动状态时缓存每个网页的内容(例如在 NSUserDefaults 中)?
    • 不,我认为他们会缓存每个页面的 URL,然后在您选择选项卡时重新加载。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-10
    • 2022-09-24
    相关资源
    最近更新 更多