1. Récupération du projet▲
Pour débuter, nous allons récupérer le projet créé lors du tutoriel Géolocalisation sous Android, puis nous importerons le projet dans Eclipse.
Nous commencerons par simplement indiquer la position d'un utilisateur sur la map.
2. Indiquer la position▲
Pour faciliter cette étape, une classe existe dans l'API Google Maps d'Android, il s'agit de MyLocationOverlay.
Cette classe est très facile à utiliser, il suffit de :
- Créer votre variable ;
private
MyLocationOverlay myLocation =
null
;
- Instancier la classe ;
myLocation =
new
MyLocationOverlay
(
getApplicationContext
(
), mapView);
- Ajouter votre location dans la map ;
mapView.getOverlays
(
).add
(
myLocation);
- Activer l'affichage de la localisation.
myLocation.enableMyLocation
(
);
Si vous souhaitez ne plus afficher la position, il suffit d'utiliser :
myLocation.disableMyLocation
(
)
Ce qui donnera :
3. Afficher une boussole▲
La classe MyLocationOverlay possède plusieurs autres fonctionnalités, dont la possibilité d'afficher une boussole. Pour cela il suffit d'appeler les méthodes suivantes :
- Affichage d'une boussole ;
myLocation.enableCompass
(
);
- Désactivation de l'affichage de la boussole.
myLocation.disableCompass
(
);
Ce qui donnera :
4. Réagir au positionnement de l'utilisateur▲
Si vous souhaitez exécuter une action particulière dès que le positionnement de l'utilisateur est défini, par exemple centrer ou zoomer la map, une méthode est disponible dans la classe MyLocationOverlay : il s'agit de runOnFirstFix.
Par exemple, si on souhaite centrer la carte et zoomer, il suffit d'ajouter le code suivant :
myLocation =
new
MyLocationOverlay
(
getApplicationContext
(
), mapView);
myLocation.runOnFirstFix
(
newRunnable
(
) {
public
void
run
(
) {
mc.animateTo
(
myLocation.getMyLocation
(
));
mc.setZoom
(
17
);
}
}
);
5. Conclusion▲
Merci d'avoir lu ce tutoriel, en espérant qu'il vous ait facilité la compréhension de l'indication de la position d'un utilisateur sur Google Maps. Voici le code résultant de ce tutoriel
6. Remerciements▲
Je tiens à remercier tout particulièrement djibril qui a mis ce tutoriel au format Developpez.com.
Merci également à Kaera d'avoir pris le temps de le relire et de le corriger.