Ios GKSession:挂起应用程序后不可见

Ios GKSession:挂起应用程序后不可见,ios,ipad,gamekit,gksession,Ios,Ipad,Gamekit,Gksession,我正在使用GameKit工作一段时间。几乎每件事都很顺利。我遇到了一个主要问题,会话:peer:didChangeState:方法在恢复后没有被调用 在苹果的例子中,如果应用程序暂停(将终止)并在返回时安装(将恢复),会话将被破坏。对于我的应用程序来说,保持会话正常运行会很好 在日志中,我可以看到,当应用程序挂起时,调用了状态为GKPeerStateUnavailable的session:peer:didChangeState:,但在使用GKPeerStateAvailable恢复调用后,不会显

我正在使用GameKit工作一段时间。几乎每件事都很顺利。我遇到了一个主要问题,会话:peer:didChangeState:方法在恢复后没有被调用

在苹果的例子中,如果应用程序暂停(将终止)并在返回时安装(将恢复),会话将被破坏。对于我的应用程序来说,保持会话正常运行会很好

在日志中,我可以看到,当应用程序挂起时,调用了状态为GKPeerStateUnavailable的
session:peer:didChangeState:
,但在使用GKPeerStateAvailable恢复调用后,不会显示。会议可以参加。但即使是新客户也找不到该设备

我使用SessionModes服务器/客户端


提前感谢您的帮助

前一段时间我在玩sessions,但我有一些建议

-恢复后,如果您尝试将处于睡眠状态的设备发送到处于唤醒状态的设备,会发生什么情况?通过了吗

-您需要GKpeerState不可用/可用吗?根据我的经验,您只需要使用ApplicationIDBecomeactive和applicationWillResignActive方法:睡觉时将暂停的游戏发送到其他设备,醒来时将取消暂停的游戏发送到其他设备。若用户将应用程序置于睡眠状态,然后将其关闭——好吧,运气不好,另一个玩家将永远坐在那个里(所以你们可以给他一个退出主菜单的选项)。这种方法适用于苹果(就批准而言)——在两个应用程序上进行了测试。
问候

前一段时间我在玩sessions,但我有一些建议

-恢复后,如果您尝试将处于睡眠状态的设备发送到处于唤醒状态的设备,会发生什么情况?通过了吗

-您需要GKpeerState不可用/可用吗?根据我的经验,您只需要使用ApplicationIDBecomeactive和applicationWillResignActive方法:睡觉时将暂停的游戏发送到其他设备,醒来时将取消暂停的游戏发送到其他设备。若用户将应用程序置于睡眠状态,然后将其关闭——好吧,运气不好,另一个玩家将永远坐在那个里(所以你们可以给他一个退出主菜单的选项)。这种方法适用于苹果(就批准而言)——在两个应用程序上进行了测试。
问候

也许我应该提到,我在会话对象的客户机/服务器配置中运行。1.数据包的交付没有任何问题。有趣的是,客户端配置的iPad发送的所有数据包都会进入休眠的iPad,如果服务器iPad再次唤醒,这些数据包就会被转发。2.Available/unavailable(可用/不可用)是保持服务器列表中可用设备的最新状态所必需的。也许我应该提到,我在会话对象的客户机/服务器配置中运行。1.数据包的交付没有任何问题。有趣的是,客户端配置的iPad发送的所有数据包都会进入休眠的iPad,如果服务器iPad再次唤醒,这些数据包就会被转发。2.Available/unavailable(可用/不可用)用于更新我的服务器列表中可用的设备。