Phonegap / Cordova: How to get cookies (iOS)?

I have a PhoneGap / Corodova project for iOS. While I was building the iOS simulator, I used jQuery Cookies and everything was fine. However, now that I have an application on my device for testing, they no longer work. I assume that this is just what iOS does not support.

Does anyone know a way to make client side cookies for iOS?

PS: My current cookie code (just in case it’s useful):

<script type="text/javascript" charset="utf-8" src="js/jquery.cookie.js"></script> <!--STARTUP SCREEN COOKIE SETTER--> <script type="text/javascript"> $(function() { var cookiedate = new Date(); cookiedate.setTime(cookiedate.getTime() + (60 * 60 * 1000)); $.cookie("startupscreen", "checked", { expires: cookiedate, path: '/' }) }); </script> 
+3
jquery ios cookies cordova
source share
2 answers

Why not use localStorage? ios5 supports HTML5 features such as localStorage.

localStorage

+2
source share

Put this here in the delegate of your application:

 -(void)applicationDidEnterBackground:(UIApplication *)application{ NSData *cookiesData = [NSKeyedArchiver archivedDataWithRootObject:[[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]]; [[NSUserDefaults standardUserDefaults] setObject:cookiesData forKey:@"xapp"]; } and in (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions: (NSDictionary*)launchOptions // Restore cookies NSData *cookiesData = [[NSUserDefaults standardUserDefaults] objectForKey:@"xapp"]; if (cookiesData) { NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithData:cookiesData]; for (NSHTTPCookie *cookie in cookies) { [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie]; } } 

This made cookies, as usual, in Cordova 3.4.x and ios6 +

+1
source share

All Articles