Su start up, sto cercando di eliminare tutte le partite sui server del centro di gioco tra i miei dispositivi programatically chiamando questo metodo su ogni dispositivo:removeWithCompletionHandler Errore
/**
* called to authenticate the players game centre id
*/
- (void)authenticateLocalUser
{
if (!self.gameCentreAvailable) return;
NSLog(@"Authenticating Local User.");
if ([GKLocalPlayer localPlayer].authenticated == NO)
{
[[GKLocalPlayer localPlayer] setAuthenticateHandler:^(UIViewController* viewcontroller, NSError *error)
{
NSLog(@"Inside Authentication Handler.");
// if there was no error, and we got a valid view controller to display
if (!error && viewcontroller)
{
// get a handle to the app delegate
AppDelegate *delegate = [UIApplication sharedApplication].delegate;
// use the view controller in the app delegate to present the authentication view controller
[delegate.viewController presentViewController:viewcontroller animated:YES completion:
^{
// once the view controller has been displayed, register the change in authentication
[self authenticationChanged];
}];
// set this class as the event handler delegate
GKTurnBasedEventHandler *event = [GKTurnBasedEventHandler sharedTurnBasedEventHandler];
event.delegate = self;
}
// load all of the matches the player is currently a part of
[GKTurnBasedMatch loadMatchesWithCompletionHandler:^(NSArray *matches, NSError *error)
{
NSLog(@"Error loading matches: %@", error);
// for each match
for (GKTurnBasedMatch *match in matches)
{
// log the id of the match
NSLog(@"ID of match we are removing: %@", match.matchID);
// and then remove it
[match removeWithCompletionHandler:^(NSError *error)
{
NSLog(@"Error removing match: %@", error);
}];
}
}];
}];
}
else
NSLog(@"Already Authenticated.");
}
Tuttavia, il metodo non funziona, e invece mi sono salutato con questo errore nella console:
2012-11-05 08: 32: 39,699 Spinning Yarn [6266: 907] errore durante la rimozione partita: errore di dominio = GKErrorDomain Codice = 17 "le operazioni richieste impossibile completare perché uno o più parametri sono non valido." UserInfo = 0x1e5b2140 {NSLocalizedDescription = Le operazioni richieste Impossibile completare perché uno o più parametri non sono validi.}
L'unico errore che sta accadendo è all'interno della removeWithCompletionHandler: Tutto il resto va bene, e ci non ci sono errori
Qualsiasi aiuto sarebbe fantastico.
Cosa dice 'error' nel gestore di completamento' loadMatchesWithCompletionHandler'? –
Ho incluso il log dell'errore di caricamento delle corrispondenze per mostrare che non vi è alcun errore. –
mi sembra un sacco di errori uomo –