Как использовать GCDAsyncUdpSocket для многоадресной рассылки по Wi-Fi и Bluetooth
В настоящее время я использую GCDAsyncUdpSocket для отправки многоадресных дейтаграмм по Wi-Fi между устройствами iOS.
Код довольно прост ..
клиент
self.socket = [[GCDAsyncUdpSocket alloc] initWithDelegate:self delegateQueue:dispatch_get_main_queue()];
//omitted error checking
[self.socket bindToPort:12345 error:&err];
[self.socket joinMulticastGroup:@"224.0.1.1" error:&err];
[self.socket beginReceiving:&err];
сервер
self.multicastSocket = [[GCDAsyncUdpSocket alloc] initWithDelegate:self delegateQueue:dispatch_get_main_queue()];
NSData *d = [@"hello" dataUsingEncoding:NSUTF8StringEncoding];
[self.multicastSocket sendData:d toHost:@"224.0.1.1" port:12345 withTimeout:-1 tag:11];
Это хорошо работает по Wi-Fi. Как мне сделать так, чтобы он работал через Bluetooth? Я набрал в кучу гугл и ничего не могу найти ... Нужно ли создавать два отдельных сокета? Один связан с интерфейсом Wi-Fi, а другой - с интерфейсом Bluetooth?
РЕДАКТИРОВАТЬ: или я запутался в чем-то фундаментальном? Это должно быть возможно. GameKit GKSession делает именно это, верно?