Il existe 3 fournisseurs de localisation sur Android.
Elles sont:
gps -> (GPS, AGPS): nom du fournisseur de localisation GPS. Ce fournisseur détermine l'emplacement à l'aide de satellites. Selon les conditions, ce fournisseur peut prendre un certain temps pour renvoyer un correctif de localisation. Nécessite l'autorisation android.permission.ACCESS_FINE_LOCATION.
network -> (AGPS, CellID, WiFi MACID): Nom du fournisseur de localisation réseau. Ce fournisseur détermine l'emplacement en fonction de la disponibilité de la tour cellulaire et des points d'accès WiFi. Les résultats sont récupérés au moyen d'une recherche réseau. Nécessite l'une des autorisations android.permission.ACCESS_COARSE_LOCATION ou android.permission.ACCESS_FINE_LOCATION.
passif -> (CellID, WiFi MACID): Un fournisseur de localisation spécial pour recevoir des emplacements sans réellement lancer un correctif de localisation. Ce fournisseur peut être utilisé pour recevoir passivement des mises à jour de localisation lorsque d'autres applications ou services les demandent sans en faire la demande vous-même. Ce fournisseur renverra les emplacements générés par d'autres fournisseurs. Nécessite l'autorisation android.permission.ACCESS_FINE_LOCATION, bien que si le GPS n'est pas activé, ce fournisseur peut uniquement renvoyer des correctifs grossiers. C'est ce qu'Android appelle ces fournisseurs de localisation, cependant, les technologies sous-jacentes pour faire fonctionner ces éléments sont mappées à l'ensemble spécifique de capacités fournies par le matériel et les opérateurs de télécommunications (service réseau).
Le meilleur moyen est d'utiliser d'abord le fournisseur «réseau» ou «passif», puis de se replier sur le «gps» et, selon la tâche, de basculer entre les fournisseurs. Cela couvre tous les cas et fournit un service au plus petit dénominateur commun (dans le pire des cas) et un excellent service (dans le meilleur des cas).
Référence de l'article: Fournisseurs de localisation Android - GPS, réseau, passif Par Nazmul Idris
Référence de code: https://stackoverflow.com/a/3145655/28557
-----------------------Mettre à jour-----------------------
Maintenant, Android a le fournisseur de localisation fusionné
Le fournisseur d'emplacement fusionné gère intelligemment la technologie de localisation sous-jacente et vous offre le meilleur emplacement en fonction de vos besoins. Il simplifie les moyens pour les applications d'obtenir l'emplacement actuel de l'utilisateur avec une précision améliorée et une consommation d'énergie réduite
Le fournisseur d'emplacement fusionné offre trois façons de récupérer l'emplacement
- Dernier emplacement: à utiliser lorsque vous souhaitez connaître une fois l'emplacement actuel.
- Demander la localisation à l'aide de l'écouteur: à utiliser lorsque l'application est à l'écran / frontend et nécessite une localisation continue.
- Demande d'emplacement à l'aide de l'intention en attente: à utiliser lorsque l'application en arrière-plan et nécessite une localisation continue.
Références :
Site officiel: http://developer.android.com/google/play-services/location.html
Exemple de fournisseur d'emplacement fusionné: GIT: https://github.com/kpbird/fused-location-provider-example
http://blog.lemberg.co.uk/fused-location-provider
-------------------------------------------------- ------