3

keychainWrapper提供了存储 a NSString(如密码)的机制。

我也可以存储NSArray或存储NSDictionarykeychainWrapper

4

1 回答 1

7

您可以使用NSKeyedArchiverand NSKeyedUnarchiver,如果您在字典数组中存储了自定义对象,请确保该类实现了NSCoding协议。

NSData * encodedData = [NSKeyedArchiver archivedDataWithRootObject:array];

然后,您可以使用 base64 编码将 NSData 转换为 NSString http://www.cocoawithlove.com/2009/06/base64-encoding-options-on-mac-and.html

对于取消归档,它只是倒退,使用NSData从 base64获取NSString并使用 unarchiver

NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:data];
于 2013-02-02T05:45:43.047 回答