iOS 9及更高版本上的URLCache.shared行为

时间:2016-09-26 16:56:31

标签: ios nsurlcache

根据legacy docs,Apple为iOS 5及更高版本上运行的所有应用程序提供了默认的NSURLCache实现。

  

没有特殊缓存要求的应用程序或   约束应该找到可接受的默认共享缓存实例。   具有更多特定需求的应用程序可以创建自定义NSURLCache   对象并使用它将其设置为共享缓存实例   setSharedURLCache:。应用程序应在任何调用之前执行此操作   这种方法。

然而,new API reference未在URLCache.shared的当前页面上指定此信息。

我的应用程序要求不缓存任何网络请求或响应。对于面向iOS 9及更高版本的应用程序,Apple是否仍提供共享NSURLCache?如果是这样,我将如何完全禁用它,忽略它,或将任何NSURLSession个请求的容量设置为0?

1 个答案:

答案 0 :(得分:3)

除了Apple的新开发者文档网站之外,该领域没有任何变化,使得可用性,可搜索性和可扫描性达到历史最低水平。但是我确定你所寻找的信息是关于你正在查看的那个的50个左右子页面中的一个。

当它仅影响他们的WWDC网站时,它已经够糟糕了。现在,糟糕的设计似乎已经转移了。很抱歉,它影响了你编写软件的能力,就像我的一样。

一个字:回滚。只是说。

但是要回答你原来的问题,是的,还有一个共享缓存。他们无法将其删除而不会对兼容性产生负面影响。

但请注意,NSURLSession请求不一定使用相同的缓存,具体取决于会话的配置方式。避免缓存的最简单方法仍然是使用NSURLSession并在配置中明确地取消会话缓存。当然,这只会影响您通过该会话进行的请求(而不是通过Web视图)。