Android : L’application Panoramio
Source : Android Developpers Blog
Le site web de Panoramio comporte une exceptionnelle collection de photos du monde entier, et ils proposent une API des plus pratiques. J’ai pensé que ça serait amusant d’y accéder via Android alors que vous vous promenez – surtout si Android peut trouver des photos intéressantes selon l’endroit où vous vous trouvez. Voici donc une application Open Source disponible pour le projet apps-for-android.
L’application démarre en affichant votre positionnement actuel via une carte personnalisée MapView. Vous pouvez alors déplacer et zoomer sur la carte pour choisir la zone dans laquelle chercher.
Une fois que vous avez sélectionné une zone, l’application télécharge des miniatures des photos les plus populaires prises dans la zone :
Sélectionnez un élément pour avoir plus de détails :
Vous pouvez alors utiliser le menu pour trouver davantage de photos du même photographe ou pour voir la photo originale sur le site de Panoramio. Mes deux fonctionnalités favorites sont celles qui vous aident à trouver l’endroit exact où a été prise la photo, qui s’affiche sur la carte à côté de votre localisation.
Vous pouvez également activer la vue radar qui utilise la boussole et le GPS pour vous montrer l’emplacement de la photo par rapport à votre propre localisation.
J’ai pensé que d’autres applications aimeraient pouvoir utiliser la vue radar à leur sauce, je l’ai donc rendu indépendante. Vous trouverez les sources dans le projet Radar. Bien entendu, vous n’avez pas besoin des sources pour utiliser cette fonctionnalité. Grâce à l’architecture d’Android, il vous suffit d’utiliser un Intent :
Intent i = new Intent("com.google.android.radar.SHOW_RADAR");
i.putExtra("latitude", 37.422f);
i.putExtra("longitude", -122.084f);
startActivity(i);
Le code de cette application n’est pas très long, mais c’est c’est un bon exemple de la manière d’utiliser la plupart des applications de géolocalisation Android.
- Utiliser une MapView intégrée en association avec MylocationOverlay pour situer votre position actuelle.
- Utiliser le SensorManager pour obtenir les direction de la boussole.
- Utilisation du LocationManager pour déterminer notre position actuelle.