iPhone App:NSKeyedArchiver中的EncodeObject问题

时间:2013-04-15 08:02:36

标签: iphone ios xcode

在iPhone应用程序中,我有一个NSDictionary对象,其密钥为NSString,值为自定义对象。我试图将此转换为NSData以获取iCloud。 我这样做了:

NSMutableData *data = [NSMutableData data];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc]
                              initForWritingWithMutableData:data];
[archiver encodeObject:myDictionary forKey:@"mykey"];
[archiver finishEncoding];

现在,encodeObject行抛出了这个异常(NSDictionary对象'myDictionary'中有值。我查了一下。):

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ConnectionProfile encodeWithCoder:]: unrecognized selector sent to instance 0x1f849350'

ConnectionProfile是我作为NSDictionary中的值存储的对象。它应该明确实施NSCoding吗?

1 个答案:

答案 0 :(得分:0)

知道了。是。我怀疑,ConnectionProfile必须实现NSCoding。现在,错误消失了。