android LocationManager.requestLocationUpdates avec minTime >0 ne fonctionne pas comme prévu
J'ai mis
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 60000, 0f, this);
il a un comportement bizarre, locationChanged est appelée à chaque seconde au lieu de tout le temps près de 1 minute. Deuxièmement, locationChanged est appelée à chaque seconde pendant 10 secondes, puis s'arrête complètement, le gps satalites icône disparaît, puis seulement reprend à nouveau lorsque l'écran revient à l'affichage d'une temporisation.
quel est le problème?
Je suis actuellement sur android 1.5.
OriginalL'auteur user121196 | 2010-11-22
Vous devez vous connecter pour publier un commentaire.
La minTime (60000) est juste un soupçon, et il n'y a aucune garantie que votre: locationlistener donnera un coup de pied à exactement 1 minute d'intervalle. Combiné avec le minDistance=0, vous aurez probablement recevoir beaucoup plus de mises à jour.
Je voudrais augmenter la minDistance à 1m minimum, et de mettre en œuvre logique de compensation pour atteindre les 1 minute d'intervalle dans votre code. Vous: LocationListener peut être mis en œuvre de telle manière que si l'emplacement des mises à jour de suivre de trop près, ils sont ignorés et ne sont pas traitées.
Vous aurez aussi des endroits différents par le biais de votre emplacement à l'écoute, avec une autre précision, le tout dans la minute d'intervalle.
Votre emplacement auditeur peut choisir la meilleure précision, et rappelez-vous lorsque le dernier point a été traité par le maintien de l'état (lastLocationProcessedAt).
OriginalL'auteur ddewaele