GKSession connectToPeer方法没有超时

时间:2011-08-18 09:47:04

标签: objective-c ios gamekit gksession

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

建立服务器连接
[_gkSession connectToPeer:peerID withTimeout:10];

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

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

我在文档中看不到任何建议超时需要的内容,只需指定超时间隔 - 并且所有客户端的其他GKSession委托方法都正常工作。我错过了一些明显的东西吗?

1 个答案:

答案 0 :(得分:4)

从我的经验来看,GKSession是非常错误的。我不认为苹果正在修复这些错误。 当我尝试连接到另一方时,我会做的是启动一个计时器 - 如果连接成功,取消计时器,当它超时时,取消连接。 此致!