gpt4 book ai didi

ios - 使用 NSURLConnection 限制磁盘和内存缓存大小

转载 作者:行者123 更新时间:2023-11-29 02:27:09 30 4
gpt4 key购买 nike

我有一个使用 UIWebViews 的应用。我正在使用 RNCachingURLProtocol 缓存页面以供离线浏览。 RNCachingProtocol 在请求中使用 NSURLConnection。在我的 AppDelegate 中,我有以下代码:

NSUInteger cacheSizeInMemory = 100 * 1024 * 1024;
NSUInteger cacheSizeOnDisc = 100 * 1024 * 1024;
NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:cacheSizeInMemory diskCapacity:cacheSizeOnDisc diskPath:@"nsurlcache"];
[NSURLCache setSharedURLCache:sharedCache];

我已经测试了 RNCachingProtocol 并确认它确实将网页内容缓存到光盘上。由于 RNCachingURLProtocol 使用 NSURLConnection,我是否可以假设我的 UIWebView 对象将使用我的中定义的 NSURLCache应用程序代理?有没有明确的方法来测试这个?谢谢!

最佳答案

UIWebView 使用共享 url 缓存,所以是的,[NSURLCache setSharedURLCache:sharedCache]; 设置 UIWebView 将使用的缓存。

最容易看到的是子类化 NSURLCache 并在

-(NSCachedURLResponse*)cachedResponseForRequest:(NSURLRequest*)request;

方法。然后将您的子类设置为共享缓存并亲自查看。

关于ios - 使用 NSURLConnection 限制磁盘和内存缓存大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27381924/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com