I use the following code to instantiate the SenderPlayerViewController and pass the session object:
- (void)session:(GKSession *)session peer:(NSString *)peerID didChangeState: GKPeerConnectionState)state { switch (state) { case GKPeerStateConnected: NSLog(@"Connected Central"); if ([settings.playerType isEqualToString:@"SENDER"]){ SenderPlayerViewController *myViewController = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:NULL] instantiateViewControllerWithIdentifier:@"SenderPlayerViewController"]; [self.navigationController pushViewController:myViewController animated:YES]; myViewController.currentSession=session; } break; case GKPeerStateDisconnected: NSLog(@"Disconnected Central"); self.currentSession = nil; break; } }
SenderPlayerViewController view header file:
@interface CentralViewController : UIViewController { Settings *settings;} @property (nonatomic, copy) GKSession *currentSession; @end
When the code is executed, I get the following error:
[GKSession copyWithZone:]: unrecognized selector sent to instance 0x9661200
need more help here ....
user2086496
source share