2012-09-22 27 views
65

que no actualizaba Xcode a la versión 4.5 y comenzó a construir para iOS 6 mensajes de registro como éste siguen apareciendo:No me solicitó en Xcode 4.5 con iOS 6.0

ADDRESPONSE - ADDING TO MEMORY ONLY 

nunca pedí que (al menos no conscientemente).

¿Qué debo hacer para detener estos mensajes? ¿Y cuál es su origen?

+0

FWIW Estoy viendo lo mismo. – bdesham

+2

Esto es algo nuevo. En mi código, parece referirse a solicitud-almacenamiento en caché y un UIWebView. 'ADDRESPONSE - AGREGAR A LA MEMORIA SOLAMENTE: http: // domain.com /'. Estoy usando '[solicitud NSURLRequestWithURL: url cachePolicy: NSURLRequestReloadIgnoringLocalCacheData timeoutInterval: 30];' – Gustav

+1

También puedo informar que esto sucede de vez en cuando cuando uso métodos como [NSData dataWithContentsOfURL: ... –

Respuesta

68

Estoy teniendo el mismo problema, el mensaje se emite desde el marco CFNetwork, esto sucede tanto en el dispositivo como en el simulador de iOS. Específicamente corriendo cuerdas de CFNetwork espectáculos:

AddResponse - no añadir en el disco o la memoria:% @ AddResponse - Agregando EXCLUSIVO DE MEMORIA:% @

Mi conjetura es que es emitida por el método CFCachedURLResponse.

Una actualización - con una investigación más mi problema es causado por lo siguiente:

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

Dónde memoryCapacity == 0. Al establecer este a un valor realista como 10MB detuvieron los mensajes sean emitidas y apareció para recuperar objetos desde el caché, como era de esperar.

Lamentablemente, dependiendo de su perspectiva, el comportamiento de NSURLRequest cambió con iOS 5. Ahora se actúa sobre NSURLRequestCachePolicy, lo que significa que necesitará verificar en qué versión de iOS se ejecuta su aplicación y ajustar su comportamiento de almacenamiento en caché.

+3

una buena respuesta ... tengo upvoted it ... helpful ... sin embargo, en mi caso, recibo este mensaje aunque estoy usando NSURLCacheStorageAllowedInMemoryOnly en mi solicitud de URL. uh, entonces quiero este comportamiento, ¿por qué debería haber un mensaje de registro que lo confirme ...? (Retórica) –

+0

En mi caso, nunca cambio ninguno de los parámetros de almacenamiento en caché, y solo uso el valor predeterminado NSURLRequestUseProtocolCachePolicy. Sigo recibiendo el mismo mensaje de registro para cada solicitud HTTP. – fishinear

+0

Sugeriría que si detecta que está ejecutando en iOS6, configure explícitamente los parámetros de memoria y caché de disco antes de usar por primera vez el sistema de carga de URL. De esta forma, sabrá qué recursos está utilizando/solicitó su aplicación. –

0

Tengo el mismo problema que usted. No sé pero lo arreglé usando la siguiente formación en el método viewDidLoad.

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

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

Esto está funcionando bien para mí, espero que esto también funcione para usted.

Cuestiones relacionadas