2010-08-08 2 views
0

Lors de l'utilisation du fournisseur de réseau pour les mises à jour d'emplacement, j'ai constaté que c'était la même heure que celle définie sur mon appareil. Ne peut-il pas être celui fourni par le réseau comme il va quand il est GPS. Ou si le fournisseur de réseau ne peut pas fournir de temps, au moins location.getTime() devrait retourner 0 au lieu de l'heure du périphérique. Est-il possible d'éviter le temps de l'appareil, comme je veux le distinguer.Pourquoi utiliser le fournisseur de réseau pour les mises à jour de localisation dans Android GPS donne l'heure du périphérique?

Répondre

1

Le fournisseur de réseau ne fournit pas votre téléphone avec une heure comme le fait le GPS. Il n'y a aucun moyen de changer cela. C'est parce que le fournisseur de réseau utilise les emplacements des antennes GPRS/EDGE/WIFI/3G auxquelles votre téléphone est connecté et calcule une position approximative - il n'y a pas de service spécifique de "localisation réseau".

GPS ou Navigational Satellite Timing and Ranging - Global Positioning System (GPS NAVSTAR) d'autre part est conçu pour transmettre un signal de synchronisation exacte horloge atomique.

+0

Hmm ... mais au moins location.getTime() doit retourner null au lieu du temps de l'appareil pour indiquer qu'il ne peut pas donner. – Pritam

0

Il ne renvoie pas null car, lorsqu'il est nul, il utilisera l'heure système. Vous pouvez vous référer au code source de Location.class

if (mTime == 0) 
    mTime = System.currentTimeMillis(); 
Questions connexes