J'ai créé une application qui utilise NSTimer, qui est déclenchée chaque seconde.L'application Iphone est retardée de 10 à 15 minutes lorsque l'iPhone est en mode veille
Mon problème est que si l'Iphone est en mode veille, je reçois un délai de 10 à 15 minutes avant le déclenchement de l'événement. J'ai stackoverflowed et googled ce et la raison pour cela semble être que le téléphone arrête d'écouter certains événements en mode veille.
Certaines personnes ont résolu ce problème en jouant un son muet, ne permettant pas au téléphone de dormir.
- Quelle pourrait être la raison du retard?
- La solution sonore muette semble être très "sale". Y a-t-il un autre moyen de résoudre ce problème?
- Si j'utilise la solution sonore muette, cela passera-t-il l'examen des pommes?
code:
timer = [NSTimer timerWithTimeInterval:1.0f target:self selector:@selector(goAction)userInfo:nil repeats:YES];
[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
-(void)goAction {
// Here i check for some dates and then call the activateBeepAlarmView
}
Par délai, je veux dire que la fonction activateBeepAlarmView est appelée et que le téléphone commence à émettre un bip sans que j'appuie sur le bouton d'alimentation pour le sortir du mode veille/verrouillage. Si j'appuie sur le bouton d'alimentation, l'application se réveille et émet un bip. – jakob