Xcode GKGameSession不使用特定帐户

Xcode GKGameSession不使用特定帐户,xcode,icloud,game-center,gamekit,gkgamesession,Xcode,Icloud,Game Center,Gamekit,Gkgamesession,我正在尝试使用iOS 10发布的GameKit的GKGameSession制作一个简单的应用程序。在大多数情况下,一切正常,但是使用我的一个测试帐户,我可以使用gkgamessession.createSessionInContainer:,创建一个会话,但是获取会话会导致在完成处理程序中返回一个错误,说“无法与助手应用程序通信” 该代码适用于我的开发者帐户,也适用于我朋友手机上的非开发者帐户,但在我的普通iCloud帐户(过去也用于开发)上,每当我打电话时,它都会收到此错误: -gkgames

我正在尝试使用iOS 10发布的GameKit的
GKGameSession
制作一个简单的应用程序。在大多数情况下,一切正常,但是使用我的一个测试帐户,我可以使用
gkgamessession.createSessionInContainer:
,创建一个会话,但是获取会话会导致在完成处理程序中返回一个错误,说“无法与助手应用程序通信”

该代码适用于我的开发者帐户,也适用于我朋友手机上的非开发者帐户,但在我的普通iCloud帐户(过去也用于开发)上,每当我打电话时,它都会收到此错误:

-
gkgamessession.loadSessionWithIdentifier

-
gkgamessession.loadSessionInContainer

我检查了设备日志,发现
gamed
框架(据我所知,GameKit)中出现了崩溃。堆栈跟踪中没有应用程序功能,全部是苹果代码,因此看起来后台GameKit服务正在崩溃。导致崩溃的行是
NSPropertyListSerialization.propertyListWithData:options:format:error:
,它引发异常并调用
abort()

回溯如下:

Incident Identifier: 8752E0F1-3FD4-45FC-93DA-3ED9E873FC9E
CrashReporter Key:   364113fe5ed8ba263006d41287924aedcb897647
Hardware Model:      iPhone8,2
Process:             gamed [1399]
Path:                /usr/libexec/gamed
Identifier:          gamed
Version:             ???
Code Type:           ARM-64 (Native)
Role:                Unspecified
Parent Process:      launchd [1]
Coalition:           <none> [265]


Date/Time:           2017-03-27 07:30:55.8324 +0100
Launch Time:         2017-03-26 23:49:39.2894 +0100
OS Version:          iPhone OS 10.2.1 (14D27)
Report Version:      104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Triggered by Thread:  0

Application Specific Information:
abort() called

Filtered syslog:
None found

Last Exception Backtrace:
0   CoreFoundation                  0x184d491b8 __exceptionPreprocess + 124
1   libobjc.A.dylib                 0x18378055c objc_exception_throw + 56
2   CoreFoundation                  0x184d49100 +[NSException raise:format:] + 116
3   Foundation                      0x18577b2b0 +[NSPropertyListSerialization propertyListWithData:options:format:error:] + 76
4   gamed                           0x1000c7cac 0x100014000 + 736428
5   gamed                           0x1000cfa90 0x100014000 + 768656
6   gamed                           0x1000c8190 0x100014000 + 737680
7   gamed                           0x1000cdb6c 0x100014000 + 760684
8   gamed                           0x1000d4428 0x100014000 + 787496
9   gamed                           0x1000e17b4 0x100014000 + 841652
10  libdispatch.dylib               0x183bd21fc _dispatch_call_block_and_release + 24
11  libdispatch.dylib               0x183bd21bc _dispatch_client_callout + 16
12  libdispatch.dylib               0x183bd6d68 _dispatch_main_queue_callback_4CF + 1000
13  CoreFoundation                  0x184cf6810 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
14  CoreFoundation                  0x184cf43fc __CFRunLoopRun + 1660
15  CoreFoundation                  0x184c222b8 CFRunLoopRunSpecific + 444
16  Foundation                      0x18575f26c -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
17  Foundation                      0x1857b3aa0 -[NSRunLoop(NSRunLoop) run] + 88
18  gamed                           0x100018bdc 0x100014000 + 19420
19  libdyld.dylib                   0x183c055b8 start + 4
事件标识符:8752E0F1-3FD4-45FC-93DA-3ED9E873FC9E
CrashReporter密钥:364113fe5ed8ba263006d41287924aedcb897647
硬件型号:iPhone8,2
进程:gamed[1399]
路径:/usr/libexec/gamed
识别码:gamed
版本:???
代码类型:ARM-64(本机)
角色:未指明
父进程:已启动[1]
联盟:[265]
日期/时间:2017-03-27 07:30:55.8324+0100
发布时间:2017-03-26 23:49:39.2894+0100
操作系统版本:iPhone操作系统10.2.1(14D27)
报告版本:104
异常类型:EXC_崩溃(SIGABRT)
异常代码:0x0000000000,0x0000000000000000
例外说明:EXC_尸体通知
由以下线程触发:0
特定于应用程序的信息:
调用了abort()
已筛选的系统日志:
找不到
上次异常回溯:
0 CoreFoundation 0x184d491b8例外预处理+124
1 libobjc.A.dylib 0x18378055c objc_异常_抛出+56
2 CoreFoundation 0x184d49100+[N异常提升:格式:][116
3基金会0x18577 B2B0+[ NStRealTysListSturyPrimeListWordDATo:选项:格式:错误:] + 76
4游戏0x1000c7cac 0x100014000+736428
5个游戏0x1000cfa90 0x100014000+768656
6个游戏0x1000c8190 0x100014000+737680
7游戏0x1000cdb6c 0x100014000+760684
8个游戏0x1000d4428 0x100014000+787496
9游戏0x1000e17b4 0x100014000+841652
10 libdispatch.dylib 0x183bd21fc调度调用块和释放+24
11 libdispatch.dylib 0x183bd21bc_dispatch_client_callout+16
12 libdispatch.dylib 0x183bd6d68 _调度_主队列_回调_4CF+1000
13 CoreFoundation 0x184cf6810 \uuuu CFRUNLOOP \uu正在\uu为\uu主\uu调度\uuuu队列\uuuuuu提供服务\uuuu+12
14 CoreFoundation 0x184cf43fc__CFRunLoopRun+1660
15 CoreFoundation 0x184c222b8 CFRunLoopRunSpecific+444
16基金会0x18575 F26C-[NSRunLoCon(NSRunLoCon)RunMy:BeFueDATE::+ 304
17基金会0x1857 B3AA0- [ NSRunLoCon(NSRunCoul)Run] + 88
18游戏0x100018bdc 0x100014000+19420
19 libdyld.dylib 0x183c055b8启动+4
我曾尝试在不同的设备上使用同一帐户,注销、硬重置、擦除设备不同的iCloud容器、重置iCloud容器、发布到live并尝试live build,但问题似乎出在这个特定的iCloud帐户上

我还做了一个新项目,刚刚在
viewDidLoad()
上调用了
gkgamessession.loadSessionWithIdentifier:
但每次结果都是一样的

如果是序列化的
.plist
文件出错,我猜与此帐户相关的某些数据已损坏或是什么

我一直在为这件事大惊小怪,所以任何帮助都会很好


谢谢

我在多台设备上看到了一个帐户的问题。它始于11月的一个晚上,现在我在每台设备上都发现了这个错误。我打开了苹果的一个漏洞,经历了所有的困难:创建一个应用程序来演示这个问题。捕获日志。这种情况持续了几个星期,最终我放弃了。我的进度被完全阻止了,我需要重新开始,所以我把
GKGameSession
撕掉,继续前进。我建议也打开一个bug。。。至少苹果不能把责任归咎于我的设备@Thunk我也这么怀疑,我会打开雷达让他们知道。谢谢你提供的信息。安迪,这个问题你有什么进展吗?我遇到了一个类似的问题。@TheBasicMind我恐怕没有,最好等着看ios 11是否修复了它。我已经用ios 11测试版进行了测试,它似乎确实修复了它(如果我们有相同的问题)。这个问题现在不会出现在iOS11上,但会出现在iOS10上的同一个苹果帐户上。因此,这似乎证实了这是客户端和服务器交互的组合,如果客户端在iOS10上,它可能会处于永久性的坏状态,并且坏状态会转移到其他iOS10客户端(iCloud?Keychain?-TBH,我不知道)。我在多个设备上看到了一个帐户的确切问题。它始于11月的一个晚上,现在我在每台设备上都发现了这个错误。我打开了苹果的一个漏洞,经历了所有的困难:创建一个应用程序来演示这个问题。捕获日志。这种情况持续了几个星期,最终我放弃了。我的进度完全受阻,我需要