Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何防止应用程序发送到后台后WKWebView被清空_Ios_Objective C_Swift_Webkit_Wkwebview - Fatal编程技术网

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

Ios 如何防止应用程序发送到后台后WKWebView被清空,ios,objective-c,swift,webkit,wkwebview,Ios,Objective C,Swift,Webkit,Wkwebview,我正在开发一个应用程序,它使用WKWebView呈现web内容。 到目前为止,除了一件事外,一切都正常:如果我在WKWebView上加载一个页面,然后将应用程序发送到后台一段时间(我会说大约十分钟),然后重新打开应用程序,我的WKWebView是空的 我猜它是自动清空的,以防止内存浪费,但是Safari或Chrome做什么来保持网页内容在内存中呢?简短回答:你不能 我的猜测是,你的应用程序实际上在暂停时被终止,而你正在重新启动。你也无法阻止 如果系统需要内存,它将向您的应用程序发送内存不足的应用

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


我猜它是自动清空的,以防止内存浪费,但是Safari或Chrome做什么来保持网页内容在内存中呢?

简短回答:你不能

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


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

但谷歌和苹果如何使用各自的浏览器呢?你认为当应用程序处于非活动状态时,他们是否会缓存每个网页的内容(例如在
NSUserDefaults
中)?不,我认为他们会缓存每个网页的URL,然后在你选择选项卡时重新加载。