65

因为我将 Xcode 更新到 4.5 版并开始为 iOS 6 构建这样的日志消息,所以不断出现:

ADDRESPONSE - ADDING TO MEMORY ONLY

我从来没有要求过(至少不是有意识的)。

我需要做什么来阻止这些消息?它们的起源是什么?

4

2 回答 2

68

我遇到了同样的问题,消息是从 CFNetwork 框架发出的,这发生在设备和 iOS 模拟器上。具体在 CFNetwork 上运行的字符串显示:

地址 - 不添加到磁盘或内存:%@ 地址 - 仅添加到内存:%@

我的猜测是它是由 CFCachedURLResponse 方法发出的。

更新 - 经过进一步调查,我的问题是由以下原因引起的:

NSURLCache *cache = [[NSURLCache alloc] initWithMemoryCapacity: memoryCapacity diskCapacity: discCapacity diskPath:[SDURLCache defaultCachePath]];
[NSURCache setSharedCache:cache];

其中 memoryCapacity == 0。将其设置为某个实际值(例如 10MB)会停止发出消息,并且似乎可以从缓存中检索对象,正如我所期望的那样。

不幸的是,根据你的观点,NSURLRequest 等行为随着 iOS 5 的变化而改变。NSURLRequestCachePolicy 现在被执行,这意味着你需要检查你的应用程序运行在哪个 iOS 版本上,并相应地调整你的缓存行为。

于 2012-09-25T07:15:09.150 回答
0

我和你有同样的问题。我不知道,但我确实通过在viewDidLoad方法中使用以下形式来修复它。

-(void) viewDidLoad
{
  // First write my code of UI Creation.
  // Then I call 

  [super viewDidLoad]; //add [super viewDidLoad] AFTER implementation, not before.
}

这对我来说很好,希望这也对你有用。

于 2014-03-28T04:33:03.810 回答