1
Game Center 게임을 만들고 있습니다.Swift에서 NSData의 struct를 추출하십시오.
var packet = MovePacket(packetID: 1, move: myMove)
let dataPacket = NSData(bytes: &packet, length: sizeof(MovePacket))
currentMatch!.sendDataToAllPlayers(dataPacket, withDataMode: GKMatchSendDataMode.Reliable, error: nil)
이 목표 - C처럼 작동하지만 내 struct MovePacket
다시 수신 NSData
를 디코딩하는 방법을 이해하지 않습니다 :이 같은 struct MovePacket
를 포함하는 데이터 패킷을 전송합니다. 당신이 의미 가정
func match(match: GKMatch!, didReceiveData data: NSData!, fromRemotePlayer player: GKPlayer!) {
var packet : MovePacket
data.getBytes(&packet, length: sizeof(MovePacket)) // getting error here: Address of variable 'packet' taken before it is initialized
println(packet) //Variable 'packet' used before being initialized
}
당신은'VAR 패킷를 시도 : MovePacket()'를? –
코드에 언급 된 날짜가 없습니다. ** "NSData **에서 다시 디코딩"이라고 말하고 싶습니까? –
@robmayoff 나는 날짜가 아닌 데이터를 의미했습니다. 편집 해 주셔서 감사합니다. –