Я полагал, что при многопользовательском подключении иногда возникают проблемы с повторным подключением. Всякий раз, когда я пытаюсь повторно подключиться к клиенту, с которым я только что отключился, ему не удается отправить новое приглашение клиенту. Я не уверен, как правильно отключиться от подключенных одноранговых узлов и как отключиться от всех подключенных одноранговых узлов, если приложение отключается из-за приостановленного режима. Может ли кто-нибудь помочь мне с этим, пожалуйста?
Например:
Если у меня подключены A и B, а B вышел за пределы диапазона, сеанс автоматически отключается из-за недостижимости и
- (void)session:(MCSession *)session peer:(MCPeerID *)peerID didChangeState:(MCSessionState)state {
case MCSessionStateNotConnected:
}
вызывается, я полагаю, что в этот момент обе стороны знают, что они отключились друг от друга, однако, когда B возвращается и хочет снова подключиться - приглашение отправляется, но другая сторона так и не получила его. Что именно произошло? Нужно ли вручную отключать сеанс, чтобы предотвратить это?