2015-12-10 5 views
2

Я пытаюсь сделать приложение как хобби, и мне нужно знать, можно ли транслировать все соседние устройства без запроса разрешения каждого устройства? Если можно попросить пользователя принять ВСЕ входящих соединений и отправить запросы на подключение к устройствам, не заставляя пользователя выбирать, какое устройство было бы здорово для меня. Я обнаружил, что вы можете подключить до 7 одноранговых узлов с помощью multipeer, но пользователь должен выбрать каждое устройство, с которым он хочет подключиться. Любой вариант близлежащего вещания мне поможет, Спасибо за помощь! :)Можете ли вы передавать данные на близлежащие устройства без запроса разрешений от устройств и передачи прав пользователя?

ответ

2

Принимая приглашение легко, вместо того, чтобы предлагать рекламодателю принять, просто установите для invitationHandler значение true.

Например, в моей реализации, у меня есть класс MPManager:

func advertiser(advertiser: MCNearbyServiceAdvertiser, didReceiveInvitationFromPeer peerID: MCPeerID, withContext context: NSData?, invitationHandler: (Bool, MCSession) -> Void) { 
    self.invitationHandler = invitationHandler 

    delegate?.invitationWasReceived(peerID.displayName) 
} 

и метод делегата:

func invitationWasReceived(fromPeer: String) { 
     self.appDelegate.cManager!.invitationHandler(true, self.appDelegate.cManager!.session) 
     self.connectingLabel.text = "Connecting" 
} 

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

Вы проверили PeerKit? Я считаю, что это подход с нулевой конфигурацией. Я кратко проверил его на предмет того, что делаю, но не вполне соответствовал моим потребностям. Возможно, это соответствует вашему.

+0

Спасибо за ваш ответ! Я проверял Bluetooth Low Energy, но, имея проблемы с поиском об этом в Интернете, я довольно сильно застрял, я попробую ваше предложение, похоже, что это сработает, спасибо еще раз :) –