Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
322 L’art du développement Android
Les terminaux Android peuvent utiliser un ou plusieurs de ces services. En tant que
développeur, vous pouvez demander au terminal de vous indiquer votre emplacement,
ainsi que des détails sur les fournisseurs disponibles. Vous pouvez même simuler votre
localisation avec l’émulateur pour tester les applications qui ont besoin de cette fonctionnalité.
Fournisseurs de localisation : ils savent où vous vous
cachez
Les terminaux Android peuvent utiliser plusieurs moyens pour déterminer votre emplacement géographique. Certains ont une meilleure précision que d’autres ; certains sont
gratuits, tandis que d’autres sont payants ; certains peuvent vous donner des informations
supplémentaires, comme votre altitude par rapport au niveau de la mer ou votre vitesse
courante.
Android a donc abstrait tout cela en un ensemble d’objets LocationProvider. Votre environnement utilisera zéro ou plusieurs instances de LocationProvider, une par service de
localisation disponible sur le terminal. Ces fournisseurs ne connaissent pas seulement
votre emplacement mais possèdent également leurs propres caractéristiques – précision,
prix, etc.
Vous aurez donc besoin d’un LocationManager contenant l’ensemble des LocationProvider pour savoir quel est le LocationProvider qui convient à votre cas particulier. Votre
application devra également disposer de la permission ACCESS_LOCATION ; sinon les différentes API de localisation échoueront à cause d’une violation de sécurité. Selon les fournisseurs de localisation que vous voulez utiliser, vous pourrez également avoir besoin
d’autres permissions, comme ACCESS_COARSE_LOCATION ou ACCESS_FINE_LOCATION.
Se trouver soi-même
L’opération la plus évidente d’un fournisseur de localisation consiste à trouver votre
emplacement actuel. Pour ce faire, vous avez besoin d’un LocationManager, que vous
obtiendrez par un appel à getSystemService(LOCATION_SERVICE) à partir de votre activité ou service, en transtypant le résultat pour obtenir un LocationManager.
L’étape suivante consiste à obtenir le nom du LocationProvider que vous voulez utiliser.
Pour ce faire, deux possibilités s’offrent à vous :
● demander à l’utilisateur de choisir un fournisseur ;
● trouver le fournisseur qui convient le mieux en fonction d’un ensemble de critères.
Livre Android.book Page 322 Dimanche, 8. novembre 2009 12:23 12
Précédent

- 337/391

Suivant