Verwendung von GCDAsyncUdpSocket für Multicast über WLAN und Bluetooth

Ich verwende derzeit GCDAsyncUdpSocket, um Multicast-Datagramme über WLAN zwischen iOS-Geräten zu senden.

Der Code ist ziemlich einfach.

Klient

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];

Server

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];

Dies funktioniert gut über WLAN. Wie bringe ich es auch über Bluetooth zum Laufen? Ich habe ein paar gegoogelt und kann nichts finden ... Muss ich zwei separate Sockets erstellen? Eine an die WLAN-Schnittstelle und eine an die Bluetooth-Schnittstelle gebunden?

EDIT: oder bin ich verwirrt über etwas grundlegendes? Das muss möglich sein. Genau das macht die GKSession von GameKit, oder?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage