もちろん提出する前にテストしましたが、iOS 6のシミュレーターでは動作しましたが、5.1ではexpectedPlayerCountが常に0ではなく1で表示されるため、動作しません。ちょうど5.1で!問題について検索したところ、開発者からネットワークの問題とサンドボックスの問題があると言われたので、アプリを送信して承認されました。そして今、私はそれを試しました、そしてそれはいつも接続で立ち往生しました!!!
(void)findMatchWithMinPlayers:(int)minPlayers maxPlayers:(int)maxPlayers viewController:(UIViewController *)viewControllerデリゲート:(id)theDelegate {
if(!gameCenterAvailable)return;
matchStarted = NO; self.match = nil; self.presentingViewController = viewController; デリゲート=theDelegate;
if(pendingInvite!= nil){
[presentingViewController dismissModalViewControllerAnimated:NO]; NSLog(@"findmatch"); GKMatchmakerViewController *mmvc = [[GKMatchmakerViewController alloc] initWithInvite:pendingInvite] ; mmvc.matchmakerDelegate = self; [presentingViewController presentModalViewController:mmvc animated:YES]; self.pendingInvite = nil; self.pendingPlayersToInvite = nil;
} そうしないと {
[presentingViewController dismissModalViewControllerAnimated:NO]; NSLog(@"findmatch2"); GKMatchRequest *request = [[GKMatchRequest alloc] init] ; request.minPlayers = minPlayers; request.maxPlayers = maxPlayers; request.playersToInvite = pendingPlayersToInvite; GKMatchmakerViewController *mmvc = [[GKMatchmakerViewController alloc] initWithMatchRequest:request]; mmvc.matchmakerDelegate = self; [presentingViewController presentModalViewController:mmvc animated:YES]; self.pendingInvite = nil; self.pendingPlayersToInvite = nil;
}
}
- (void)matchmakerViewController:(GKMatchmakerViewController *)viewController didFindMatch:(GKMatch *)theMatch {NSLog(@ "%d"、theMatch.expectedPlayerCount); [presentingViewController dismissModalViewControllerAnimated:YES]; NSLog(@ "didfind"); self.match = theMatch; NSLog(@ "%d"、match.expectedPlayerCount); match.delegate = self; if(!matchStarted && match.expectedPlayerCount == 0){NSLog(@ "マッチを開始する準備ができました!"); [自己lookupPlayers]; }}
私がたくさんの悪いレビューを得ているのを手伝ってください!!