Не работает в AppKit (основной) поток при отображении списка лидеров Game Center в OS X
Всякий раз, когда я пытаюсь просмотреть список лидеров игровых центров IOS OS X с этим кодом:
GKGameCenterViewController *gameCenterController
= [[GKGameCenterViewController alloc]init];
gameCenterController.gameCenterDelegate = self;
if (gameCenterController !=nil) {
GKDialogController *sdc =[GKDialogController sharedDialogController];
gameCenterController.viewState = GKGameCenterViewControllerStateLeaderboards;
sdc.parentWindow = [NSApp mainWindow];
[sdc presentViewController:gameCenterController];
}
(Это почти точная копия документации яблок)
Я получаю:
*** Ошибка подтверждения в void assertRunningOnAppKitThread()(), /SourceCache/ViewBridge/ViewBridge-99/ViewBridgeUtilities.m:535 Возникла необработанная исключительная ситуация, не выполняющаяся в потоке AppKit (основной)
Метод вызывается нажатием на элемент меню. Я попытался обернуть метод в блок dispatch_sync(dispatch_get_main_queue() безуспешно.
Редактировать: Добавлена трассировка стека: - Кажется, что он запускается из основного потока (щелчок меню), а сам Game Center запускает новую очередь.
Что я упустил? Есть идеи?