2013-12-01 2 views
1

Я конвертирую приложение из GameKit в Multipeer Connectivity и не могу найти способ, который позволил бы устройству браузера отключить другой сеанс от сеанса. С помощью GKSession мы могли отключить один сеанс из сеанса, используя disconnectPeerFromAllPeers :, но я не могу найти что-либо подобное в MPC. Конечно, у MPC есть метод disconnect :, но это выводит локальный peer из сеанса ... я не хочу.Multipeer Connectivity - программно отключить одноранговую сеть

Ближайший я нашел: cancelConnectPeer: но это кажется более сфокусированным на отмене попытки подключения ... не после подключения.

Кто-нибудь знает, как это сделать, если это возможно с помощью MPC?

Спасибо!

+0

Мне удалось получить эту работу, отправив пакет NSData сверстнику, сообщающему об отключении. – SteveM

+0

Как программно подключиться в MPC, Может ли кто-нибудь мне помочь? – raaz

ответ

5

Участник может покинуть сеанс, позвонив по телефону [MCSession disconnect].

Если вы хотите, чтобы браузер отключил другой одноранговый узел, вы можете заставить браузер отправить сообщение этому равноправному узлу и отключить одноранговую связь от сеанса после получения этого сообщения.

0

Я тоже работаю над MPC, но нахожу также раздражающим API. Поэтому я перемещаю логику, например, отключая определенный уровень до уровня логики приложения, от физического уровня соединения. Например. Сессия/соединение всегда включено и просто выполняет мягкое отключение, не отправляя какое-либо сообщение конкретному одноранговому узлу.

Bluetooth не работает стабильно, как мы все испытали в GKSession. В MPC мы чаще всего использовали Wifi, поэтому стабильность соединения и стоимость не имеют большого значения.

Смежные вопросы