HomeiOS Developmentios - Matchmaker connecting points on Cellular community

ios – Matchmaker connecting points on Cellular community


I am attempting to ascertain a connection between two units utilizing cellular community. The config in each units are okay permitting use cellular knowledge for the app.
I can join and begin the sport with WIFI networ

`// Provoke matchmaking
- (void)initiateMatchmakingWithViewController:(UIViewController*)rustViewController {
    dispatch_async(dispatch_get_main_queue(), ^{
        if (![GKLocalPlayer localPlayer].isAuthenticated) {
            NSLog(@"Participant is just not authenticated.");
            return;
        }

        NSLog(@"Making ready MatchMaker");
        GKMatchRequest *request = [[GKMatchRequest alloc] init];
        request.minPlayers = 2;
        request.maxPlayers = 2;

        GKMatchmakerViewController *mmvc = [[GKMatchmakerViewController alloc] initWithMatchRequest:request];
        mmvc.matchmakerDelegate = self;

        // Use the handed view controller to current the matchmaking UI
        [rustViewController presentViewController:mmvc animated:YES completion:nil];
        NSLog(@"MatchMaker working....");

        // Retailer the rustViewController for later, to revert again to it
        originalViewController = rustViewController;
    });
}


// GKMatchmakerViewControllerDelegate strategies
- (void)matchmakerViewControllerWasCancelled:(GKMatchmakerViewController *)viewController {
    [originalViewController dismissViewControllerAnimated:YES completion:nil];
    NSLog(@"Matchmaking was cancelled.");
}

- (void)matchmakerViewController:(GKMatchmakerViewController *)viewController didFailWithError:(NSError *)error {
    [originalViewController dismissViewControllerAnimated:YES completion:nil];
    NSLog(@"Matchmaking failed with error: %@", error.localizedDescription);
}

- (void)matchmakerViewController:(GKMatchmakerViewController *)viewController didFindMatch:(GKMatch *)match {
    [originalViewController dismissViewControllerAnimated:YES completion:nil];
    self.currentMatch = match;
    match.delegate = self;
    NSLog(@"Match discovered.");

    // Fetch particulars for every participant within the match
    NSMutableArray<NSString *> *playerIDs = [NSMutableArray array];
    for (GKPlayer *participant in match.gamers) {
        [playerIDs addObject:player.playerID];
    }

    [GKPlayer loadPlayersForIdentifiers:playerIDs withCompletionHandler:^(NSArray<GKPlayer *> *players, NSError *error) {
        if (error) {
            NSLog(@"Error retrieving player details: %@", error.localizedDescription);
            return;
        }

        for (GKPlayer *player in players) {
            if (![player.playerID isEqualToString:GKLocalPlayer.localPlayer.playerID]) {
                [self loadAndStoreAvatarForRemotePlayer:player];
            }
        }
    }];
}`

I can see how each purchasers are in state “connecting” however the log “Match discovered.” it is by no means set.
I can also see this log “[Match] syncPlayers didn’t loadPlayersForLegacyIdentifiers”
GameKit

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments