Загрузка результатов с помощью GameKit - PullRequest
1 голос
/ 19 января 2011

Как сохранить и загрузить результаты позже, если нет доступного соединения? В сеансе WWDC он говорит использовать следующий код, если нет доступного соединения:

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

Затем я сохраняю объект NSData в NSUSerDefaults. Но как мне вернуть значение показателя int из отчета?

Спасибо

1 Ответ

1 голос
/ 19 января 2011

Использование 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
...