Ios swift 3游戏中心:参与者数量始终为4

Ios swift 3游戏中心:参与者数量始终为4,ios,swift3,gamekit,Ios,Swift3,Gamekit,我制作了一个基于旋转的游戏,它与swift 2完美配合。 我可以成功地将代码更改为swift 3.2,并更正大约400个错误,但游戏中心存在一个问题,我无法解决它。 当我通过gamecenter ViewController将参与者的人数设置为“2层”,然后按下“邀请朋友”,我得到的玩家人数是4而不是2! gamecenter会向下一个参与者发送一条文本消息,其中参与者的数量也是4。 这当然会影响程序的其余部分,这是我在Swift 2中没有遇到的问题。 这是我代码的一部分: func joinT

我制作了一个基于旋转的游戏,它与swift 2完美配合。 我可以成功地将代码更改为swift 3.2,并更正大约400个错误,但游戏中心存在一个问题,我无法解决它。 当我通过gamecenter ViewController将参与者的人数设置为“2层”,然后按下“邀请朋友”,我得到的玩家人数是4而不是2! gamecenter会向下一个参与者发送一条文本消息,其中参与者的数量也是4。 这当然会影响程序的其余部分,这是我在Swift 2中没有遇到的问题。 这是我代码的一部分:

func joinTurnBasedMatch()
{
    let request = GKMatchRequest()
    request.minPlayers = 2
    request.maxPlayers = 4
    request.defaultNumberOfPlayers = 2

    let tbvc = GKTurnBasedMatchmakerViewController(matchRequest: request)
    tbvc.turnBasedMatchmakerDelegate = self
    present(tbvc, animated: true, completion: nil)
}

func turnBasedMatchmakerViewController(_ viewController: GKTurnBasedMatchmakerViewController, didFind match: GKTurnBasedMatch)
{
    self.dismiss(animated: true, completion: nil)
    self.performSegue(withIdentifier: "To_ViewC_CG", sender: match)
    print("*** Number OF Players ***")
    print(match.participants!.count)
}  

我是否需要向代码中添加任何内容或更改其中的任何内容?

此问题已在最新的ios更新中解决。
现在它工作得很好

defaultNumberOfPlayers如果未设置此属性,则默认玩家数等于maxPlayers属性中存储的值。默认玩家数量决定标准配对用户界面中显示的被邀请者数量。播放器可以选择覆盖此选项以添加或删除插槽。看起来您正在设置它,所以我不确定为什么会发生这种情况有趣的是,当我使用带iOS 9的iPad时,程序会发送正确的信息,但在带iOS 10的iPad2 air上则不会。这与gamecenter的新设置有关。似乎类似于。出于好奇,如果将.maxPlayers减少到3会发生什么?有趣的是,当我将request.maxPlayers更改为3时,它显示了3名玩家,尽管我只邀请了朋友中的1名玩家。