Es gibt einen ziemlich guten Überblick hier über den folgenden Link wie Sie GameKit für Ihre App konfigurieren und verwenden.
Leider Sie wird für Sie nicht die GKSession Instanz verwenden können, um die GKPeerPickerController Standard-UI-Picker zu konfigurieren, wenn Sie mehr als 2 Geräte unterstützen wollen. Stattdessen müssen Sie eigene UI-Elemente entwickeln, um die Verbindungen zwischen dem Master/Server und den mehreren Clients einzurichten und zu konfigurieren.
Hier ist ein einfacher Weg, GameKit für mehr als 2 Geräte zu aktivieren:
Wenn Sie eine GKSession Instanz mit initWithSessionID initialisieren: display: Session, zu verwenden:
- Session: GKSessionModeServer für der Server/Master
- sessionMode: GKSessionModeClient für die anderen (mehrere) Clients
Session: GKSessionModePeer ist die dritte verfügbare Option und ist die Option in den meisten Beispielcode von Apple wie die GKTank Demo zur Verfügung gestellt verwendet.
Hinweis: Sie können wahrscheinlich GKSessionModePeer verwenden und trotzdem ein Netzwerk mit mehr als 2 Geräten haben, da der Peer-Modus das Gerät gleichzeitig in den Server- und Client-Modus versetzt, bis eine Verbindung hergestellt wird.Explizites Konfigurieren eines Geräts als Server kann die Einrichtung vereinfachen, die zum Testen der GameKit-API nützlich ist.
Für den Server:
GKSession *session = [[GKSession alloc] initWithSessionID:kTestSessionID displayName:nil sessionMode:GKSessionModeServer];
Für den Auftraggeber (n):
GKSession *session = [[GKSession alloc] initWithSessionID:kTestSessionID displayName:nil sessionMode:GKSessionModeClient];
Beachten Sie, dass alle Methoden von GKSession in iOS 7 und höher veraltet sind. – Blip