В приложении вызывается приглашениеDidFail, иногда оно подключается правильно, а иногда нет ...
Какие могут быть возможные причины отказа в соединении?
// Display an alert sheet indicating a failure to connect to the peer.
- (void) invitationDidFail:(SessionManager *)session fromPeer:(NSString *)participantID
{
NSString *str;
if (alertView.visible) {
// Peer cancelled invitation before it could be accepted/rejected
// Close the invitation dialog before opening an error dialog
[alertView dismissWithClickedButtonIndex:0 animated:NO];
[alertView release];
str = [NSString stringWithFormat:@"%@ is busy.\nPlease again", participantID];
//[peerList removeAllObjects];
[self peerListDidChange:nil];
[self.tableData reloadData];
//[self TwoPlayer:self];
} else {
// Peer rejected invitation or exited app.
str = [NSString stringWithFormat:@"%@ is busy.\nPlease try again", participantID];
//[peerList removeAllObjects];
[self peerListDidChange:nil];
[self.tableData reloadData];
//[self TwoPlayer:self];
}
}
Даже если он не вызывает этот метод, он уверен, что устройство не сопряжено с каким-либо другим устройством, тогда каковы причины, по которым оно когда-то принимает и вызывает метод didReceivedInvitation, или какое-то время оно отказывает, вызывая приглашениеDidFail.
// Invitation dialog due to peer attempting to connect.
- (void) didReceiveInvitation:(SessionManager *)session fromPeer:(NSString *)participantID;
{
[alertView dismissWithClickedButtonIndex:1 animated:NO];
NSString *str = [NSString stringWithFormat:@"Incoming Invite from %@", participantID];
if (alertView.visible) {
[alertView dismissWithClickedButtonIndex:0 animated:NO];
[alertView release];
}
alertView = [[UIAlertView alloc]
initWithTitle:str
message:@"Do you wish to accept?"
delegate:self
cancelButtonTitle:@"Decline"
otherButtonTitles:nil];
[alertView addButtonWithTitle:@"Accept"];
[alertView show];
}