Je crée un jeu dans lequel l'utilisateur est récompensé lorsque l'application est en arrière-plan ou ne fonctionne pas. Si l'application est complètement fermée, ils devraient quand même obtenir des points. Actuellement, je le fais en utilisant un NSTimer, mais j'ai lu partout que les timers ne peuvent pas s'exécuter en arrière-plan. Voici ce que j'ai et comment dois-je fixer:Exécuter des tâches d'évaluation en jeu en arrière-plan-c
- (void)applicationDidEnterBackground:(UIApplication *)application {
score = [[NSUserDefaults standardUserDefaults] integerForKey:@"score"];
[[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:nil];
timer = [NSTimer timerWithTimeInterval:1.0 target:self selector:@selector(score) userInfo:nil repeats:YES];
[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
}
-(void) score{
score++;
[[NSUserDefaults standardUserDefaults] setInteger:score forKey:@"score"];
}
Il est possible d'autoriser l'exécution de tâches en arrière-plan lorsque votre application est en arrière-plan. Lorsque vous passez ce temps, vous ne pouvez plus exécuter de tâches. Vous devriez regarder dans les notifications au lieu d'exécuter des tâches en arrière-plan. –
Je vais regarder dans ce @TejaNandamuri – John55