0

マッチメーカーを使用してカスタム マッチメイキング ビューを作成しようとしています。以下のコードは、一致を見つけるために使用されます。

異なる Game Center アカウントを持つ 2 つの異なるデバイスでこれを実行すると、両方が一致しますが、いずれも一致に接続しません。それらは、無限ループの while でスタックするだけで、決して抜け出すことはありません。何か見逃したことがありますか?実際に試合に接続するには、何かを呼び出す必要がありますか?

- (void) findMatch{
GKMatchRequest *request = [[GKMatchRequest alloc] init];
request.minPlayers = 2;
request.maxPlayers = 2;
request.playersToInvite = nil;
NSLog(@"Start searching!");

[matchmaker findMatchForRequest:request
               withCompletionHandler:^(GKMatch *match, NSError *error)
 {
     if (error) {
         // Print the error
         NSLog(@"%@", error.localizedDescription);
     }
     else if (match != nil)
     {
         curMatch = match;
         curMatch.delegate = self;


         NSLog(@"Expected: %i", match.expectedPlayerCount);

         while (match.expectedPlayerCount != 0){
             NSLog(@"PLayers: %i", curMatch.playerIDs.count);
         }
         NSLog(@"Start match!");
     }
 }];
4

1 に答える 1