我正在开发一款简单的游戏中心多人游戏。除了向玩家发送消息之外,我几乎管理了所有事情。我的意思是,我可以邀请玩家玩游戏,游戏开始等等。
关于苹果文档,我使用以下方法发送数据,但它根本不起作用。
const char *bytes = "123";
NSData *packet = [NSData dataWithBytes:&bytes length:3];
[myMatch sendDataToAllPlayers: packet withDataMode: GKMatchSendDataUnreliable error:nil];
如果可能的话,工作样本会很棒。 非常感谢。
我做的几乎一样。
NSError *errorTransmit;
const char *bytes = "asd";
NSData *packet = [NSData dataWithBytes:&bytes length:3];
[myMatch sendDataToAllPlayers: packet withDataMode: GKMatchSendDataUnreliable error:&errorTransmit];
if (errorTransmit != nil)
NSLog(@"Error sending data to peers: %@", [errorTransmit localizedDescription]);
}
但是当代码到达时 NSLog(@“向同行发送数据时出错:%@”,[errorTransmit localizedDescription]); 我收到程序收到的信号:“EXC_BAD_ACCESS”。 这就是为什么我看不出发生了什么。
答案 0 :(得分:0)
必须承认我还没有使用GameCenter的零碎,但作为一种通用的方法,我认为你可能想看看是否有任何错误产生。因此,如果你使用像...这样的东西。
NSError *transmissionError;
[myMatch sendDataToAllPlayers: packet
withDataMode: GKMatchSendDataUnreliable
error: &transmissionError];
if(transmissionError != nil) {
NSLog(@"Transmission error: %@", transmissionError);
}
...你可能会知道出了什么问题。
顺便说一句,我现在远离编译器,所以对上面的任何拼写错误道歉。 : - )
答案 1 :(得分:0)
我在这里看不到任何错误,我正在使用此代码:
NSData *data = nil;
NSError *error = nil;
int packet = 777;
data = [[NSData alloc] initWithBytes:&packet length:sizeof(int)];
[self.mMatch sendDataToAllPlayers:data withDataMode:GKMatchSendDataReliable: &error];
并且有效