2017-10-06 3 views
-1

J'essaie de mettre en œuvre obtenir l'emplacement actuel. Et j'ai utilisé ces deux codes.Quel est le meilleur moyen d'obtenir l'emplacement précis actuel dans Android?

mFusedLocationClient = 
LocationServices.getFusedLocationProviderClient(this); 
mFusedLocationClient.getLastLocation()... 

La précision de localisation est de 2000 mètres

et

ReactiveLocationProvider locationProvider = new ReactiveLocationProvider(context); 
locationProvider.getLastKnownLocation()... 

Situation acccuracy est de 100 à 200 mètres. Je pensais que l'emplacement réactif était le plus précis. Y a-t-il un meilleur moyen d'obtenir une localisation précise actuelle? et quelqu'un peut-il expliquer pourquoi le code google ne montre pas l'emplacement exact?

+0

Salut @Umakant utiliser GogleApiClient, qui donnera l'emplacement précis – Shanmugam

Répondre

2

Vous pouvez créer LocationRequest et setPriority avec LocationRequest.PRIORITY_HIGH_ACCURACY et il sera de haute précision. Bien que la précision dépende du GPS, il m'arrive d'obtenir 10 mètres de précision.

protected void createLocationRequest() { 
     mLocationRequest = new LocationRequest(); 
     mLocationRequest.setInterval(INTERVAL); 
     mLocationRequest.setFastestInterval(FASTEST_INTERVAL); 
     mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); 
    } 

Pour en savoir plus vous pouvez vous référer Fused location provider

+0

merci mon pote pour votre réponse, Vous voulez utiliser le concept de mise à jour de localisation droit? ou nous pouvons ajouter ces paramètres à getLastKnownLocation? –

+0

Vous pouvez ajouter locationRequest avec GoogleApiClient. Vous pouvez consulter le lien que j'ai mentionné dans la réponse. Vous apprendrez à connaître le concept entier de FusedLocationAPI @UmakantAngadi – Kuls

0

Les deux sont corrects, mais de mon expérience et réactive est plus précise, mais en général, ils offrent plus de précision quand vous leur donnez le temps de régler . Ce qui veut dire que si vous instanciez LocationProvider et que vous essayez instantanément d'interroger l'emplacement, il pourrait ne pas fournir l'emplacement le plus précis, je suggère plutôt de donner à l'utilisateur un bouton d'actualisation pour voir si l'emplacement est plus précis que le précédent. WhatsApp emplacement expéditeur est un bon exemple de cela, les utilisateurs peuvent actualiser l'emplacement actuel pour trouver des coordonnées plus précises.

+0

Merci pour votre réponse. Avez-vous une idée pourquoi le code réactif est meilleur que le code google. –