2017-05-29 2 views
-2

Je suis tellement intéressé, puis-je obtenir la coordination GPS en mode déconnecté (sans connexion Internet). C'est possible? comment peut-on faire ça?Comment obtenir la latitude et la longitude en mode hors-ligne

merci à l'avance

+2

gps ne dépend pas d'internet.vous pouvez obtenir lat long en utilisant gps, MobileNetwork. –

+1

Si vous utilisez les services google play, utilisez les callbacks GoogleApiClient et obtenez l'emplacement actuel indépendamment d'Internet, mais le fait de dessiner cet emplacement sur la carte nécessite Internet. – MKY

Répondre

0
LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER); 
if(location==null){ 
    location = lm.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); 
} 

Cela se lat et long d'un fournisseur de réseau. D'abord, il va essayer d'obtenir l'emplacement du GPS. Si gps est désactivé, il reviendra comme nul. C'est pourquoi j'ai mis if (location == null) condition.

+0

bonjour, merci pour votre réponse monsieur, si son travail pour objet est toujours déplacer monsieur ?, et a-t-il besoin google maps api? –

+1

Si vous voulez déplacer le curseur Ur sur google maps que Google maps API est nécessaire mais si vous voulez simplement des coordonnées qu'il n'y a pas besoin d'API. Oui, les coordonnées changent lorsque vous vous déplacez, mais cela peut prendre un certain temps car cela sera fourni par votre opérateur réseau. –

+1

Ce code est cassé. getLastKnownLocation renverra null si elle n'a pas d'emplacement, si aucune autre application n'utilise ce fournisseur. Ce qui signifie qu'il retournera la plupart du temps nul. Si vous avez réellement besoin d'un emplacement, utilisez requestLocationUpdates ou requestSingleUpdate. getLastKnownLocation ne devrait presque jamais être utilisé (la seule chose qui peut être utilisée est une optimisation, et même alors, vous devez supposer que cela échouera généralement). –