0

出于某种原因,当两个设备在同一个 wifi 上时,游戏中心 matchMaking 运行良好,但当其中一个设备在 3g 上时无法运行(设备不断搜索并且找不到彼此)。我正在使用: 1. 带有沙盒帐户的 iOS 7.0.4 的 iPad 2(与设备的应用商店帐户兼容) 2. 带有沙盒帐户的 iOS 7.0.4 的 Iphone 4s(与设备的应用商店帐户兼容,但与 iPad 不同帐户)。

创建匹配的代码如下所示:

- (IBAction)continueButtonPressed:(id)sender {
GKMatchRequest *request = [[GKMatchRequest alloc] init];
request.minPlayers = 2;
request.maxPlayers = 4;
request.defaultNumberOfPlayers = 2;
if(([[self.gameTypeSegmentControl objectAtIndex:0] selectedSegmentIndex] == 0) ||
   ([[self.gameTypeSegmentControl objectAtIndex:1] selectedSegmentIndex] == 0))
{
    int temp = [self.allLanguages indexOfObject:[[self.languages objectAtIndex:selectedRow] primaryLanguage]];
    if ((temp > 0) && (temp <= self.allLanguages.count))
    {
        request.playerGroup = temp;
    }else
    {
        request.playerGroup = ENGLISH_US_LANG;//50
    }
}
if(([[self.gameTypeSegmentControl objectAtIndex:0] selectedSegmentIndex] == 1) ||
   ([[self.gameTypeSegmentControl objectAtIndex:1] selectedSegmentIndex] == 1))
{
    request.playerGroup = 255;
}

if (isJoining)// Not the creator of the game
{
    request.playerAttributes = JOIN_ATTRIBUTE;
    [[GKMatchmaker sharedMatchmaker] findMatchForRequest:request withCompletionHandler:^(GKMatch *match, NSError *error) {
        if (error)
        {
            NSLog(@"findMatchForRequest ended with error");
            // Process the error.
        }
        else if (match != nil)
        {
            self.myMatch = match; // Use a retaining property to retain the match.
            match.delegate = self;
            if (!self.matchStarted && match.expectedPlayerCount == 0)
            {
                self.matchStarted = YES;
                NSLog(@"match begin");
                // Insert game-specific code to begin the match.
            }
        }
    }];
}else //The creator of the game
{
    request.playerAttributes = CREATE_ATTRIBUTE;
    GKMatchmakerViewController *mmvc = [[GKMatchmakerViewController alloc] initWithMatchRequest:request];
    mmvc.matchmakerDelegate = self;

    [self presentViewController:mmvc animated:YES completion:nil];
}    

}

知道是什么导致了问题吗???

4

0 回答 0