在iOS游戏中导入多人游戏 - GameKit

时间:2013-10-20 11:29:54

标签: ios multiplayer

我终于使用SQLite数据库创建了成功的测验 - 琐事游戏。现在我正在尝试将游戏套件导入游戏。我的问题是,当我向具有阵列的对等体发送数据包时,其他设备从数据包接收到错误的答案。这是我的代码:

NSMutableArray * questionArray = [[[NSMutableArray alloc] init] autorelease];
            [questionArray addObject:newText];
            [questionArray addObject:ans1];
            [questionArray addObject:ans2];
            [questionArray addObject:ans3];
            [questionArray addObject:ans4];
            //questionArray = [NSMutableArray arrayWithObjects: newText,ans1,ans2,ans3,ans4, nil];
            NSData * questionData = [NSKeyedArchiver archivedDataWithRootObject:questionArray];
            [mySession sendDataToAllPeers:questionData withDataMode:GKSendDataReliable error:nil];

在这里我创建我的数据数组,在receivedata方法中我将它放在标签上

-(void)receiveData: (NSData *)data fromPeer:(NSString *)peer inSession: (GKSession *)session context: (void *)ctx {

[mySession setDataReceiveHandler:self withContext:nil];
NSMutableArray * recievedQuestion = [NSKeyedUnarchiver unarchiveObjectWithData:data];
NSLog(@"%@", recievedQuestion);

self.question.text = [recievedQuestion objectAtIndex:0];
[recievedQuestion removeAllObjects];

这是来自具有重复数据的设备的日志。

2013-10-20 14:00:38.382 P2P [589:c07](     “2006年以下哪个国家赢得了世界杯(足球)?”,     意大利,     法国,     葡萄牙,     意大利 )

正如你所见,我收到了重复的回答。有人可以解释一下为什么会这样吗?

0 个答案:

没有答案