我创建了一个基于之前应用的应用。我试图移动数据。我目前正在使用swift,之前的应用程序正在使用对象c。我正在使用这个全局对象C函数,它本质上是从其他应用程序复制而来的。它能够获取数据并且消息计数是正确的,但是当我查找值时它返回null。见下文。
NSUserDefaults *prefs;
prefs = [NSUserDefaults standardUserDefaults];
NSMutableArray *oldMessages = [prefs objectForKey:@"savedMessages"];
//received
if(oldMessages)
{
for( NSData *data in oldMessages )
{
NSKeyedUnarchiver *customUnarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
[customUnarchiver setClass:[myMessage class] forClassName:@"Message"];
myMessage* message = [customUnarchiver decodeObjectForKey:@"root"];
[customUnarchiver finishDecoding];
NSLog(@"message!!!%@", message.messageBody); // returns null, but in previous app it returns a value.
}
}
return oldMessages;