- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 iOS GameCenter 开发一款回合制游戏。我使用默认的 GKTurnBasedMatchmakerViewController
进行配对和邀请。但是在发送和接受邀请后,player:didAcceptInvite:
方法不会被调用。我预计这个方法会在其他玩家接受本地玩家的邀请后被调用。
所以我的问题是:
1) 如何触发player:didAcceptInvite:
?
2) 如果邀请被拒绝,你如何通知本地玩家?
我的目标是 iOS 7+,并使用两台真实设备进行测试。
本地播放器鉴权后会调用如下方法:
-(void)onPlayerAuthenticationChanged
{
if ([GKLocalPlayer localPlayer].isAuthenticated)
{
if (!self.isLocalPlayerAuthenticated)
{
[[GKLocalPlayer localPlayer] registerListener:self];
self.isLocalPlayerAuthenticated = YES;
}
}
//…
}
GC 单例符合GKLocalPlayerListener
协议(protocol),其中包括GKInviteEventListener
和player:didAcceptInvite:
。我的实现看起来与 iOS 7: How to setup invitation handler for Game Center matchmaker 中建议的解决方案大致相同。 .
最佳答案
虽然文档没有说明这一点,但我通过实验了解到 didAcceptInvite
仅在实时匹配时触发。它不会在回合制比赛中触发。目前尚不清楚这是设计使然(并且文档有误)还是已损坏。我在这方面与 Apple 有一个 Unresolved 错误。
但是,作为替代方案,receivedTurnEventForMatch
会在受邀玩家开始游戏时触发。如果其他玩家接受邀请时您需要做一些事情,请尝试将其放入 receivedTurnEventForMatch
关于ios - GameCenter didAcceptInvite 未调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32024056/
我正在使用 iOS GameCenter 开发一款回合制游戏。我使用默认的 GKTurnBasedMatchmakerViewController 进行配对和邀请。但是在发送和接受邀请后,player
我是一名优秀的程序员,十分优秀!