2

每当我尝试使用以下代码查看游戏中心排行榜 ion 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 本身开始一个新队列。?

我错过了什么?有任何想法吗?

4

0 回答 0