PhoneGap / Cordova:如何使用cookies(iOS)?
我有一个适用于iOS的PhoneGap / Corodova项目。 虽然在iOS模拟器上构建,但我使用了Jquery Cookies,它们很好。 但是,现在我的设备上有应用程序进行测试,它们不再有效。 我猜这只是iOS不支持的东西。
有谁知道为iOS做客户端cookie的方法?
PS:我目前的cookies代码(以防万一):
$(function() { var cookiedate = new Date(); cookiedate.setTime(cookiedate.getTime() + (60 * 60 * 1000)); $.cookie("startupscreen", "checked", { expires: cookiedate, path: '/' }) });
为什么不使用localStorage? ios5支持像localStorage这样的HTML5function。
localStorage的
把它放在你的app委托中:
-(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]; } }
这使得Cookie在Cordova 3.4.x和ios6 +中照常运行