Utilisation de l'API Maps Services 2.0

Utilisation de l'API Maps Services 2.0

Il est parfois nécessaire d’afficher une carte de sa position ou tout autre endroit. En développement Android, le moyen le plus simple est d’utiliser la Google Map. Nous allons apprendre la manière de l’intégrer et de l’utiliser dans une application Android.

Prérequis

Google Play Services

Dans un premier temps, il faut installer et configurer « Google Play Services » à l’aide du SDK Manager.

Pour cela ouvrir le SDK Manager, et dans la partie « Extra » cochez « Google Play Services » et l’installer.

sdk google play services

 

Ajouter la bibliothèque « Google Play Service » au projet

Une fois la bibliothèque téléchargé, il est nécessaire de l’attribuer au projet. Pour cela faire clic droit sur le projet, cliquer sur « Propriété » puis dans la partie « Android », puis sur Add et sélectionner « google-play-service_lib ».

project eclipse maps services

import maps services project android

S’il la librairie ne se trouve pas dans la liste des bibliothèques affichées, il faut importer dans le Workspace le dossier suivant en tant que projet, puis l’ajouter de la même manière que décrite précédemment:

X:\Users\xxxxx\Eclipse\android-sdks\extras\google\google_play_services\libproject\google-play-services_lib

 

L’API Key

Afin de récupérer la clé nécessaire à l’utilisation de la Google Map, il faut dans un premier temps se rendre sur cette adresse : https://console.developers.google.com/project

Il faut ensuite créer un nouveau projet à l’aide du bouton « CREATE PROJECT ».

developers console new project

 

Une fois le projet créé, dans le menu de gauche , dans la partie « APIs & auth » puis « API » activer le service « Google Maps API v2 ».

developers console activer maps api

Par la suite, à nouveau dans le menu de gauche, aller dans la partie « Credentials », créer une nouvelle clé en cliquant dans l’ordre sur « CREATE NEW KEY ».

new key maps api

Afin de récupérer une clé appropriée à Android, choisir « ANDROID KEY ».

new key maps services

Enfin, finaliser la création en cliquant sur « CREATE ».

certificat maps api

Afin de permettre à votre application d’utiliser cette clé, il faut lui en donner l’autorisation, pour cela il faut d’abord récupérer votre clé SHA-1.

Pour cela se rendre sur Eclipse, et aller dans les préférences d’Eclipse (Windows -> Préférences).

preference eclipse

Puis dans la partie Android, aller dans Build (Android -> Build)

build preference eclipse

Si la clé n’est pas présente dans le champ « SHA1 fingerprint », il faut récupérer le chemin du répertoire « keystore » dans le champ « Default debug keystore) et à l’aide de la commande console suivante, récupérer la clé SHA-1 :

Une fois la clé SHA-1 récupéré, retourner sur Google Developers (https://console.developers.google.com/project) puis, dans la partie « Crédentials » de votre projet (APIs & auth -> Credentials) et cliquer sur « Edit allowed Android Applications » et renseigner votre clé suivi de votre package séparé d’un poin virgule.

certificats maps services

 

Integration de la Google Map

Modification de l’AndroidManifest

Balise Application

Tout d’abord, dans AndroidManifest.xml, il faut rajouter, dans la balise « application », ces lignes afin d’indiquer la version de Google Play Service

Ainsi que les lignes suivantes afin de stocker la clé précédemment récupérée :

Cela permettra de rendre visible votre clé à toute MapFragment présente dans votre application.

 

Ajout des permissions

Par la suite, il est important de déclarer les différentes permissions nécessaires à l’utilisation de la Google Map :

  • La permission INTERNET permettra à l’application de se connecter à Internet.
  • La permission ACCESS_NETWORK_STATE permettra à l’application de récupérer des informations sur le réseau.
  • La permission WRITE_EXTERNAL_STORAGE permettra à l’application d’écrire dans la mémoire externe du téléphone.
  • La permission READ_GSERVICES permettra à l’application d’accéder aux services Web de Google.
  • La permission ACCESS_COARSE_LOCATION permettra à l’application de détecter la position actuelle de l’utilisateur via la connexion réseau du téléphone.
  • La permission ACCESS_FINE_LOCATION permettra à l’application de détecter la position actuelle de l’utilisateur via la localisation GPS.

 

OpenGL ES Version 2

Enfin, il faut noter qu’OpenGL ES Version 2 est obligatoire pour l’utilisation de la Google Map, si OpenGL ES Version 2 n’est pas installé, la carte n’apparaitra pas.

Afin de rendre l’application indisponible si OpenGL ES Version 2 n’est pas détecté, il faut rajouter les lignes suivantes :

 

La création de la vue

Afin de rendre la carte sur une activité, il faut ajouter un élément « Fragment » dans votre vue. Pour cela, il faut ouvrir le fichier XML de l’activité dans laquelle la Google Map sera (ici activity_map.xml) et ajouter les lignes suivantes :

Un Fragment est un élément d’interface qui contiendra la carte dans la vue. L’Id servira à manipuler le Fragment dans des modifications ultérieures.

 

La création de l’activité qui chargera la vue

Enfin, spécifier la vue à charger dans l’activité souhaitée.

 

Tutoriel réalisé en partenariat avec Bleu 122, agence spécialisé dans le développement des applications mobiles.