2010-02-24 23 views
0

Je lisais votre commentaire ci-dessous:Core Location tout iPhone verrouillé

« Je ne sais pas ce que vous entendez par « le mode d'économie d'énergie », mais si vous pensez quand l'écran est verrouillé/arrêt, Cela n'empêche pas Core Location de fonctionner si votre application est toujours en cours d'exécution.Au contraire, il est facile de décharger la batterie de votre téléphone beaucoup plus rapidement que si vous verrouilliez le téléphone pendant qu'une application utilisant Core Location fonctionne, car le téléphone continuera à mettre à jour l'application lorsque de nouvelles données de localisation sont disponibles.Vous pouvez éviter cela dans votre application en écoutant UIApplicationWillResignActiveNotification pour détecter le verrouillage de l'écran, et UIApplicationDidBecomeActiveNotification pour détecter le déverrouillage. "

J'ai une application qui utilise l'emplacement de base, et aussi longtemps que mon téléphone n'est pas verrouillé, je reçois des entrées régulières de NSlog de l'emplacement de base. Le moment où je le verrouille cependant, les NSlogs de l'emplacement de base s'arrêtent jusqu'à ce que je réveille le téléphone. Mon code qui fait la journalisation est:

-(void) locationManager:(CLLocationManager *)manager 
didUpdateToLocation:(CLLocation *)newLocation 
    fromLocation:(CLLocation *)oldLocation { 

if (startingPoint == nil) 
    self.startingPoint = newLocation; 

userLocation.latitude = newLocation.coordinate.latitude; 
userLocation.longitude = newLocation.coordinate.longitude; 

NSLog(@"Update from LM: Latitude = %f",newLocation.coordinate.latitude); 
NSLog(@"    Longitude = %f",newLocation.coordinate.longitude); 

} 

Ai-je raté quelque chose?

+0

Vous voudrez peut-être modifier votre question, car il se lit actuellement comme si vous essayiez d'avoir ou de répondre à une discussion avec quelqu'un. À tout le moins, essayez de préciser le problème que vous rencontrez, ce que vous avez essayé de résoudre et ce que vous aimeriez que nous aidions. –

Répondre

0

Cela ressemble à une partie de a response that I wrote à une question il y a plus d'un an. Voir mon commentaire là-dessus à ce sujet.

Pour référence future, si vous souhaitez écrire une réponse à une réponse, vous ne devez pas créer de nouvelle question. Stack Overflow a une fonction de commentaire conçue à cet effet. Dire "votre commentaire" sans contexte du tout demande de la confusion (je viens juste de lire Stack Overflow aujourd'hui, ou je ne l'aurais pas remarqué).