NSUserDefaults Unreliable in iOS 8

后端 未结 12 705
北荒
北荒 2020-12-07 17:31

I have an app that uses [NSUserDefaults standardUserDefaults] to store session information. Generally, this information is checked on app launch, and updated on app exit. I

12条回答
  •  独厮守ぢ
    2020-12-07 17:55

    It looks like iOS 8 does not like setting strings in NSUserDefaults. Try encoding the string into NSData before saving.

    When saving:

    [[NSUserDefaults standardUserDefaults] setObject:[NSKeyedArchiver archivedDataWithRootObject:testString] forKey:@"Session"];
    

    When reading:

    NSData *_data = [[NSUserDefaults standardUserDefaults] objectForKey:@"Session"];
    NSString *_dataArchive = [NSKeyedUnarchiver unarchiveObjectWithData:_data];
    

    Hope this helps.

提交回复
热议问题