sí, se puede hacer esto. En primer lugar, en applicationDidBecomeActive añadir esta línea
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyAlways];
El cookieAcceptPolicy se comparte a través de aplicaciones y puede ser cambiado sin su conocimiento, por lo que desea asegurarse de que tiene la política de aceptar lo que necesita cada vez que su aplicación se está ejecutando.
Entonces, para fijar la cookie:
NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary];
[cookieProperties setObject:@"testCookie" forKey:NSHTTPCookieName];
[cookieProperties setObject:@"someValue123456" forKey:NSHTTPCookieValue];
[cookieProperties setObject:@"www.example.com" forKey:NSHTTPCookieDomain];
[cookieProperties setObject:@"www.example.com" forKey:NSHTTPCookieOriginURL];
[cookieProperties setObject:@"/" forKey:NSHTTPCookiePath];
[cookieProperties setObject:@"0" forKey:NSHTTPCookieVersion];
// set expiration to one month from now or any NSDate of your choosing
// this makes the cookie sessionless and it will persist across web sessions and app launches
/// if you want the cookie to be destroyed when your app exits, don't set this
[cookieProperties setObject:[[NSDate date] dateByAddingTimeInterval:2629743] forKey:NSHTTPCookieExpires];
NSHTTPCookie *cookie = [NSHTTPCookie cookieWithProperties:cookieProperties];
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
Esta cookie tiene el nombre y el valor TestCookie someValue123456 y será enviado con cualquier petición http a www.example.com.
Para una gran advertencia sobre el establecimiento de cookies, ¡por favor vea mi pregunta aquí!
NSHTTPCookieStorage state not saved on app exit. Any definitive knowledge/documentation out there?
NSHTTPCookieStorage ciertamente implementa completamente un almacenamiento persistente de cookies. Solo se trata de establecer la duración de la cookie correctamente en el lado del servidor. – Till
Sí implementa un almacenamiento persistente de cookies. El único problema es que falla cuando la aplicación se cierra poco después de que se establece la cookie. – kball
Ball, terminamos yendo con esta solución que está muy cerca de su respuesta: http://lists.apple.com/archives/Webkitsdk-dev/2003/Sep/msg00003.html –