ios - 接收数据时EXC_BAD_ACCESS代码= 1

标签 ios objective-c exc-bad-access

-(void) match:(GKMatch *)match didReceiveData:(NSData *)data fromPlayer:(NSString *)playerID {
NSMutableArray* grid = (NSMutableArray*)[NSKeyedUnarchiver unarchiveObjectWithData:[data bytes]];

    _game.gameMap.grid = grid;
    [_game updateMap:_game.localPlayer.playerFleet];
    _mainGameController = [[MainGameController alloc] initMainGameControllerWithGame:_game andFrame:self.frame.size];
    [self addChild:_mainGameController.containers.overallNode];

}
-(BOOL)sendMap {
NSError* error;

NSData* packet = [NSKeyedArchiver archivedDataWithRootObject:_game.gameMap.grid];
[_game.gameCenter.match sendDataToAllPlayers: packet withDataMode:GKMatchSendDataUnreliable error:&error];
if (error != nil) {
    NSLog(@"error");
}
return false;

}

此代码在以下行中返回错误的访问错误:
NSMutableArray* grid = (NSMutableArray*)[NSKeyedUnarchiver unarchiveObjectWithData:[data bytes]];

最佳答案

unarchiveObjectWithData:期望其参数为NSData的实例。那不是[data bytes]返回的。您可能只需要data

关于ios - 接收数据时EXC_BAD_ACCESS代码= 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22367086/

相关文章:

ios - 如何在编辑文本字段时禁用手势识别器?

objective-c - 如何解除多个 View Controller ?

ios - Parse.com Facebook 授权从不调用完成处理程序

ios - UINavbar项目在iOS 8.1中缩小到角落

c++ - 链表 - EXC_BAD_ACCESS。我认为该错误是因为我错误地删除了一个节点,但我将不胜感激任何建议

ios - 如何在 NSPredicate 中匹配保留时间组件的日期?

ios - 具有接口(interface) Controller 的架构 x86_64 的重复符号

ios - 我不断收到有关我的 iOS 项目的 .png 文件的多个构建命令的警告

ios exc_bad_access 因为延迟调度

iphone - "EXC_BAD_ACCESS"当在 tableView 和 mapView 之间切换太快时