【发布时间】:2017-02-13 23:27:01
【问题描述】:
我正在创建一个使用 GameCenter 的游戏,并尝试发送和检索数据。
这就是我发送数据的方式:(函数“sendData”由 GameCenter 和 GameKit 提供)
let nick = GCHelper()
let data = NSData(contentsOfFile: "")
try! nick.match.sendData(toAllPlayers: data as! Data, with: .reliable)
'GCHelper' 是我正在使用的一个类,它包含许多 Game Center 功能,如果您有兴趣,可以通过问题进一步下载。我只需要调用它来访问该函数。
然后检索我正在尝试使用的数据:
nick.match(GKMatch, didReceive: Data, fromPlayer: String)
注意:以上参数我都没有填写
这是我用来检索数据的函数:
public func match(_ theMatch: GKMatch, didReceive data: Data, fromPlayer playerID: String) {
if match != theMatch {
return
}
delegate?.match(theMatch, didReceiveData: data, fromPlayer: playerID)
}
我使用的函数“match()”是 GCHelper 类的一部分。 GCHelper 允许您更轻松地创建 GameCenter 游戏。这是一个链接,以供您参考:https://github.com/jackcook/GCHelper
问题 现在我已经向您展示了所有方法,我将如何使用以前的方法来检索数据?它的参数之一是“fromPlayer”并询问 playerId(String),但我怎么知道其他玩家的 playerID 是什么?更好的是,我将如何检索它?
如果您认为这不是处理检索数据的好方法,我该如何做得更好?有没有其他方法可以做到这一点?
关键事实: 游戏需要 2 个人,数据仅在这 2 个人之间交换。我需要知道如何在 2 之间发送和检索数据。 谢谢您的帮助!如果您有任何问题,请告诉我。
【问题讨论】:
-
你能解决这个问题吗?我在我的一款游戏中遇到了类似的问题。
-
是的,我知道了,我现在不在家,但到时候我会为你解答!
-
好的,谢谢。为了清楚起见,我想在开始比赛之前向其他玩家发送/接收本地分数字符串并更新 UI。
标签: ios swift game-center gamekit