4

我正在努力解决 GKSession 问题。我有一个客户端和服务器,我的客户端尝试与

[_gkSession connectToPeer:peerID withTimeout:10];

如果服务器明确拒绝与客户端的连接,[_gkSession denyConnectionFromPeer:peerID]connectionWithPeerFailed:withError正确触发客户端。

但是,如果服务器只是忽略连接或存在其他问题,客户端将坐在那里尝试连接,直到宇宙热死。超时似乎没有任何效果。

我在文档中看不到任何建议设置超时的内容,而不仅仅是指定超时间隔 - 并且所有客户端的其他GKSession委托方法都可以正常工作。我在这里遗漏了一些明显的东西吗?

4

1 回答 1

4

根据我的经验,GKSession 非常有问题。而且我不认为苹果正在修复这些错误。我要做的是在您尝试连接到另一方时启动一个计时器 - 如果连接成功,取消计时器,当它超时时,取消连接。问候!

于 2012-05-29T10:37:40.567 回答