我一直在尝试实现一种方法,以便在我的应用程序与Game Center断开连接时发现,因为在断开连接时结束转弯会破坏应用程序。我刚刚开始在我的iPad上测试WiFi,发现即使我完全退出应用程序,它也会自动验证我的播放器,然后让我进入游戏中心。它甚至可以加载最近游戏中的游戏数据。然后我尝试使用游戏中心应用程序本身,唯一导致网络错误的是单击“游戏”选项卡。很明显,大部分数据都被缓存了,所以我不知道要检查什么,看看我是否已经断开连接。
所以如何测试设备是否连接到Game Center? Match数据,参与者或他们的任何属性都不是nil,并且播放器总是经过身份验证。
答案 0 :(得分:0)
尝试用两件事来管理它:
网络连接:使用FXReachability然后[FXReachability isReachable]
游戏中心身份验证:
在您的app测试验证中:
GKLocalPlayer.localPlayer.isAuthenticated
更一般地说,总是测试完成处理程序错误和数组存在,如下所示:
[GKTurnBasedMatch loadMatchesWithCompletionHandler:^(NSArray *matches, NSError *error) {
if (error) {
// what kind of error ?
}
if (matches) {
// do what you need to do
}}];
希望这会对你有所帮助......