Я создаю игру, в которой используется GameCenter, и я пытаюсь отправить и получить данные.Отправить и получить данные из GameCenter: Swift
Это, как я отправляю данные: (функция «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. Спасибо за помощь! Если у вас есть какие-либо вопросы, дайте мне знать.
Вы могли решить эту проблему? У меня такая же проблема в одной из моих игр. –
Да, я сделал, я сейчас не дома, но когда я вернусь, я отвечу на него за вас! – Nickolans
Хорошо, спасибо. Чтобы быть ясным, я хочу отправить/получить локальную строку оценки другому игроку и обновить интерфейс перед началом матча. –