草庐IT

nsurlcache

全部标签

ios - NSURLCache 在 iOS 6.1 下崩溃

使用iOS6.1我的应用程序在启动后直接崩溃,当它尝试发出多个HTTP请求时,但它在任何OS我正在经历EXC_BAD_ACCESS在从队列调用的strlen函数中崩溃:com.apple.CFURLCACHE_work_queue,每次启动我的应用程序时,除了第一次。我可以通过在应用程序启动后立即清除NSURLCache来解决问题:[[NSURLCachesharedURLCache]removeAllCachedResponses];还有其他人遇到过这些崩溃吗?应用程序代码中是否存在导致这些崩溃的问题?或者这应该是一个提交给苹果的错误? 最佳答案

ios - 有没有办法查询 HTML5 应用程序缓存?

有没有办法查询HTML5应用缓存的内容?我正在编写一个使用大量缓存网络内容的iOS应用程序。在应用程序离线时加载给定页面之前,我想检查该页面是否存在于缓存中。如果没有,我会通知用户他们必须在线才能看到该内容;如果是,我会继续加载它。现在,iOS有自己的URL缓存系统,我最初只是假设我可以通过这种方式检查缓存的内容:if([[NSURLCachesharedURLCache]cachedResponseForRequest:myRequest]!=nil){//goaheadandloadthepage}else{//notifytheuserthatthecontentisn'tava

iOS URLCache 在不应该的时候缓存(恕我直言)

有谁知道为什么要缓存这个请求?我使用的是未修改的.defaultURLSessionConfiguration。响应header是:(来自Charles,通过调试数据任务完成block中的响应确认){"Accept-Ranges"=bytes;"Content-Length"=1480;"Content-Type"="application/json";Date="Mon,22May201719:14:13GMT";Etag="\"42bebc5fb88323b8cd145ed85ea7a018\"";"Last-Modified"="Mon,22May201714:54:38GMT"

ios - 加密 NSURLCache 的更好方法是什么?

我想加密/解密来自NSURLSession的所有缓存数据使用AES256。我是使用Alamofire的新手,但我认为可以在不涉及库本身的情况下进行。我不知道在缓存之前加密数据并在从缓存中检索之后解密数据的最无缝方式是什么。我知道我可以使用Alamofire的SessionDelegate和方法dataTaskWillCacheResponse和dataTaskWillCacheResponseWithCompletion加密,但我没有看到与从缓存中提取的数据相关的任何内容以进行解密。另一方面,我正在考虑自定义NSURLProtocol覆盖cachedResponse但我没有看到任何与该

objective-c - NSURLCache 使用什么缓存算法?

Apple的NSURLCache类有decentdocumentation,但它没有说明什么cachingalgorithm它用。是LRU、LFU还是完全不同的东西?我正在为iPad开发,希望利用NSURLCache的磁盘缓存功能来缓存照片,方法是使用[NSURLCachesetDiskCapacity](默认值似乎是0)。这个值的上限是多少? 最佳答案 磁盘容量的上限好像是设备的磁盘容量。我看不到任何关于“软件强加”限制的信息。至于缓存算法,苹果好像没有提供文档,不过我找到了this.严格来说,这并不是您所要求的,但它确实可以让您

swift - 删除所有缓存和 Cookie,重置整个应用程序

我正在尝试构建一个具有UIWebView的应用程序。当我退出我的应用程序时,我希望重置所有数据,包括缓存和cookie。我目前能够删除cookie(可能还有缓存),但问题是即使在删除之后,一些网站似乎还保留了之前事件的数据。这是我用来清除cookie和缓存的代码://Loopsthrougheachofthecookiesanddeletesthem.forcookieinNSHTTPCookieStorage.sharedHTTPCookieStorage().cookies!{NSHTTPCookieStorage.sharedHTTPCookieStorage().deleteC

ios - Alamofire 无法禁用缓存

我无法让Alamofire或iOS停止缓存:Alamofire.SessionManager.default.session.configuration.requestCachePolicy=.reloadIgnoringLocalCacheData或URLCache.shared.removeAllCachedResponses()我需要为所有请求禁用它吗?还试过:letconfiguration=URLSessionConfiguration.defaultconfiguration.urlCache=nilletmanager=Alamofire.SessionManager(c

iphone - UIWebView 并不总是调用 -[NSURLCache storeCachedResponse :forRequest:]

UIWebView似乎并不总是在加载资源时调用storeCachedResponse:forRequest:。有谁知道为什么?我正在尝试使用-[NSURLCachestoreCachedResponse:forRequest:]来缓存图像,它可以很好地完成大部分工作,但在某些情况下UIWebView不会调用此方法在实际有图像的页面加载上。 最佳答案 回答赏金提供者的查询:I'mseeingthisforsmallfiles(100sofbytes)aswell.ThewebviewalsofailstocallcachedRespo

iphone - UIWebView 并不总是调用 -[NSURLCache storeCachedResponse :forRequest:]

UIWebView似乎并不总是在加载资源时调用storeCachedResponse:forRequest:。有谁知道为什么?我正在尝试使用-[NSURLCachestoreCachedResponse:forRequest:]来缓存图像,它可以很好地完成大部分工作,但在某些情况下UIWebView不会调用此方法在实际有图像的页面加载上。 最佳答案 回答赏金提供者的查询:I'mseeingthisforsmallfiles(100sofbytes)aswell.ThewebviewalsofailstocallcachedRespo

swift - Alamofire - NSURLCache 不工作?

我的缓存设置如下varcacheSizeMemory=20*1024*1024varcacheSizeDisk=100*1024*1024varsharedCache=NSURLCache(memoryCapacity:cacheSizeMemory,diskCapacity:cacheSizeDisk,diskPath:"SOME_PATH")NSURLCache.setSharedURLCache(sharedCache)使用缓存策略创建请求varrequest=NSMutableURLRequest(URL:NSURL(string:"\(baseUrl!)\(path)")!,