AFNetworking Cookies persistentes automáticamente

En esta pregunta , se dice que AFNetworking se encarga automáticamente de las cookies en segundo plano, pero en una pregunta anterior que pregunté, estaba teniendo problemas para mantener la session en el server que se realizó en php cuando inicié session. Una vez que cerré (para debugging en Xcode) la aplicación y volvió en la session se había ido. La respuesta fue mantener las cookies como para solucionar el problema:

 NSData *cookiesData = [[NSUserDefaults standardUserDefaults] objectForKey:@"User"]; if ([cookiesData length] > 0) { for (NSHTTPCookie *cookie in [NSKeyedUnarchiver cookiesData]) { [[NSHTTPCookieStorage shanetworkingHTTPCookieStorage] setCookie:cookie]; } } 

Esto me da un locking de la aplicación cuando trato de hacer algo como esto. Cuando inicie session, establezco NSUserDefault así:

 [[NSUserDefaults standardUserDefaults] setObject:data forKey:@"User"]; //Then synthesize 

¿Es esta la manera incorrecta de usar esto? ¿Es NSHTTPCookieStorage incluso mi problema? Gracias.

Use lo siguiente, esta es una forma correcta de save y cargar cookies que funcionan para mí:

 - (void)saveCookies{ NSData *cookiesData = [NSKeyedArchiver archivedDataWithRootObject: [[NSHTTPCookieStorage shanetworkingHTTPCookieStorage] cookies]]; NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject: cookiesData forKey: @"sessionCookies"]; [defaults synchronize]; } - (void)loadCookies{ NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithData: [[NSUserDefaults standardUserDefaults] objectForKey: @"sessionCookies"]]; NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage shanetworkingHTTPCookieStorage]; for (NSHTTPCookie *cookie in cookies){ [cookieStorage setCookie: cookie]; } } 

¡Espero eso ayude!