iOS 9.2.1, Xcode 7.2.1, ARC enabled
base64EncodedString, dataFromBase64String: depreciates after iOS 7.0
Updated solution:
Encode string:
id<nscoding> obj; NSData *data = [NSKeyedArchiver archivedDataWithRootObject:obj]; NSString *string = [data base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];
Decode data:
NSString *string; NSData *data = [[NSData alloc] initWithBase64EncodedString:string options:(NSDataBase64DecodingIgnoreUnknownCharacters)]; id<nscoding> obj = [NSKeyedUnarchiver unarchiveObjectWithData:data];
Note. This is very useful when working with keychain to store a dictionary of key / value pairs in kSecValueData.
Hope this helps someone! Greetings.
source share