Ios Gamecenter与特定对手创建新比赛

Ios Gamecenter与特定对手创建新比赛,ios,iphone,swift,game-center,Ios,Iphone,Swift,Game Center,我正在使用gamecenter创建一个基于回合的游戏。 这是一场一对一的比赛,所以每场比赛都有两名参与者 游戏结束后,会出现gameover屏幕,任何一位参与者都可以按“重赛”与同一对手开始新游戏 按下按钮时我使用的代码如下(简化): 现在,我的问题是。当我重赛一场对手是我在游戏中心的朋友的比赛时,一切似乎都很顺利。但是,如果我在gamecenter中重赛对手不是我朋友的游戏,我会得到以下错误: 无法完成请求的操作,因为播放机无效 然而,当我打印对手玩家(GKPlayer)时,我得到以下结果(这

我正在使用gamecenter创建一个基于回合的游戏。 这是一场一对一的比赛,所以每场比赛都有两名参与者

游戏结束后,会出现gameover屏幕,任何一位参与者都可以按“重赛”与同一对手开始新游戏

按下按钮时我使用的代码如下(简化):

现在,我的问题是。当我重赛一场对手是我在游戏中心的朋友的比赛时,一切似乎都很顺利。但是,如果我在gamecenter中重赛对手不是我朋友的游戏,我会得到以下错误:

无法完成请求的操作,因为播放机无效

然而,当我打印对手玩家(GKPlayer)时,我得到以下结果(这似乎很好,并不像错误所暗示的那样无效):

(玩家ID:g:58D9E388A2CD0DEFC795DC9035E7D22A别名:TestBoomar_1名称:‎“‪TestBoomar_1‬” 状态:(空)

所以,我的问题是:GKMatchRequest接收者必须是玩家的朋友才能使这些接收者有效吗?接收者不应该是Gamecenter中的任何玩家,而不取决于他们是否是游戏创建者的朋友吗

欢迎您的任何意见, 谢谢!

似乎你并不孤单()。你有没有试过用苹果打开一个bug?似乎你并不孤单()。你有没有试过用苹果打开一个bug?
let request = GKMatchRequest()
        request.maxPlayers = 2
        request.minPlayers = 2
        request.recipients = [opponent]

GKTurnBasedMatch.findMatchForRequest(request, withCompletionHandler: {
            match, error in
            if error != nil {
                println("FIND MATCH REQUEST ERROR:\(error.localizedDescription)")
            } else {
                println("Match Found")}})