1

如果没有可用的连接,我如何保存和上传分数?在 WWDC 会话中,如果没有可用的连接,它会说使用以下代码:

NSData *archivedScore = [NSKeyedArchiver archivedDataWithRootObject:[NSData dataWithBytes:&score length:sizeof(score)]];

然后我将 NSData 对象保存到 NSUSerDefaults。但是我如何从中得到一个 int 分数值来报告呢?

谢谢

4

1 回答 1

1

使用NSKeyedUnarchiver(来自档案和序列化编程指南

int score = 42;
NSData *archivedScore = [NSKeyedArchiver archivedDataWithRootObject:[NSData dataWithBytes:&score length:sizeof(score)]];
int *scorePtr = [[NSKeyedUnarchiver unarchiveObjectWithData:archivedScore] bytes];
NSLog(@"score = %d", *scorePtr); // Output: score = 42
于 2011-01-19T13:57:16.940 回答