Google Maps SDK — qu’est-ce que c’est, Google Maps et API pour le développement

Auteur : IT Sectr Publié le : 2026-04-30 Temps de lecture : 10 min

Google Maps SDK est un ensemble d’outils de Google pour intégrer des cartes interactives, du géocodage, des itinéraires et la recherche de lieux dans des applications mobiles et web. Le SDK comprend Maps SDK pour Android et iOS, Places API pour travailler avec des géodonnées et Directions API pour la construction d’itinéraires. Les services Google Maps traitent plus de 100 milliards de requêtes par jour, ce qui fait de Maps SDK l’une des solutions de cartographie les plus performantes. Selon Google Maps Platform Documentation, 2025, le SDK est utilisé dans 60% de toutes les applications mobiles avec cartes.

Points clés

  • Google Maps SDK — une plateforme pour intégrer cartes, géodonnées et navigation dans les applications
  • Maps SDK — affichage de cartes interactives avec des styles et couches personnalisables
  • Places API — recherche de lieux, géocodage et obtention d’informations sur les établissements
  • Directions API — construction d’itinéraires pour différents modes de transport
  • Facturation — paiement à l’utilisation de l’API basé sur le nombre de requêtes ($2-10 pour 1000 requêtes)

Qu’est-ce que Google Maps SDK?

Google Maps SDK est une plateforme complète pour les développeurs fournissant des outils pour travailler avec des données géographiques dans les applications. La plateforme comprend plusieurs API: Maps SDK (affichage de cartes), Routes API (itinéraires), Places API (recherche de lieux et géodonnées) et Geocoding API (conversion d’adresses en coordonnées). Chaque SDK s’intègre séparément et possède son propre modèle de facturation.

Contrairement à Apple MapKit, Google Maps SDK offre un ensemble de données plus large: informations sur 250 millions de lieux, trafic en temps réel, panoramas Street View et Indoor Maps pour les bâtiments. Selon Statista (2025), Google Maps Platform détient 75% du marché des SDK de cartographie dans les applications mobiles. L’avantage clé est une seule clé API pour tous les services Google Maps et l’intégration multiplateforme (Android, iOS, web).

Clé API et configuration de sécurité

La clé API est un élément obligatoire pour travailler avec Google Maps SDK. La clé est créée dans Google Cloud Console et liée à un projet spécifique. Pour Android, il faut spécifier le certificat SHA-1 de l’application; pour iOS — le Bundle Identifier. Google recommande de limiter l’utilisation de la clé API par adresses IP, référents HTTP ou paquets d’applications pour empêcher tout accès non autorisé.

Maps SDK pour Android: Intégration et fonctionnalités

Maps SDK pour Android est une bibliothèque qui affiche les cartes Google interactives dans une application Android via MapView ou SupportMapFragment. Le SDK prend en charge: les styles de carte personnalisés, les marqueurs avec fenêtres d’information, les polygones et polylignes, les couches de trafic et de transport, ainsi que les événements tactiles et les gestes (zoom, rotation, inclinaison). Les cartes utilisent OpenGL pour le rendu, offrant 60 FPS sur les appareils modernes.

L’intégration commence par l’ajout de la dépendance dans build.gradle et la configuration de la clé API via AndroidManifest.xml. Google Maps SDK pour Android nécessite Google Play Services sur l’appareil. Si Google Play Services n’est pas disponible (par exemple, sur les appareils Huawei sans services Google), les cartes ne s’afficheront pas. Pour ces cas, Google recommande d’utiliser des solutions alternatives ou WebView avec JavaScript Maps API.

kotlin
// AndroidManifest.xml — métadonnées de la clé API
// 
//     android:value="YOUR_API_KEY"/>

// Fragment de carte dans Activity
class MapActivity : AppCompatActivity(),
    OnMapReadyCallback {

    private lateinit var map: GoogleMap

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_map)
        val mapFragment = supportFragmentManager
            .findFragmentById(R.id.map) as SupportMapFragment
        mapFragment.getMapAsync(this)
    }

    override fun onMapReady(googleMap: GoogleMap) {
        map = googleMap
        val sydney = LatLng(-33.8688, 151.2093)
        map.addMarker(MarkerOptions().position(sydney)
            .title("Sydney"))
        map.moveCamera(CameraUpdateFactory
            .newLatLngZoom(sydney, 12f))
    }
}

Google Maps SDK sur Android prend en charge Indoor Maps — affichage des plans d’étage des bâtiments (aéroports, centres commerciaux). Il suffit de définir map.isIndoorEnabled = true pour l’activer. La couche de trafic montre la congestion routière en temps réel — les données sont mises à jour toutes les 2 à 5 minutes. La couche de transport affiche les itinéraires de transport en commun dans les villes prises en charge.

Maps SDK pour iOS: Configuration et utilisation

Maps SDK pour iOS offre les mêmes fonctionnalités que la version Android mais adaptées à la plateforme Apple. L’intégration se fait via Swift Package Manager ou CocoaPods. Maps SDK pour iOS utilise les serveurs Google pour le rendu des cartes mais peut fonctionner avec Apple MapKit pour la navigation native. Le SDK prend en charge iOS 15 et supérieur, ainsi que SwiftUI via UIViewRepresentable.

Une caractéristique spécifique de la version iOS est la configuration obligatoire d’Info.plist avec la clé API et l’ajout du schéma d’URL pour Google Maps. Contrairement à Android, le SDK iOS ne nécessite pas Google Play Services mais nécessite l’application Google Maps installée pour certaines fonctions (par exemple, ouvrir les cartes dans la navigation). Pour les projets multiplateformes, Google recommande une seule clé API par projet, activée pour les deux plateformes.

swift
import GoogleMaps

class MapViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        let camera = GMSCameraPosition.camera(
            withLatitude: 55.7558,
            longitude: 37.6173,
            zoom: 10
        )
        let mapView = GMSMapView.map(
            withFrame: view.frame,
            camera: camera
        )
        self.view = mapView

        let marker = GMSMarker()
        marker.position = CLLocationCoordinate2D(
            latitude: 55.7558,
            longitude: 37.6173
        )
        marker.title = "Moscow"
        marker.map = mapView
    }
}

Sur iOS, Google Maps SDK prend en charge les styles personnalisés via un fichier JSON au format Google Maps Styling. Les styles permettent de modifier les couleurs des routes, de l’eau, des parcs et des bâtiments selon le design de l’application. Également pris en charge: Heatmap Layer pour la visualisation de la densité des données, KML et GeoJSON pour importer des données géographiques à partir de sources externes.

Places API: Recherche de lieux et géocodage

Places API est un service Google Maps Platform pour obtenir des informations sur les lieux géographiques: adresses, coordonnées, évaluations, horaires d’ouverture, photos et avis. Places API fonctionne en deux modes: Place Search (recherche par texte ou rayon) et Place Details (informations détaillées sur un lieu spécifique par Place ID). Le SDK est disponible pour Android, iOS et sous forme d’API REST.

Places SDK pour Android et iOS permet d’intégrer la saisie semi-automatique d’adresses (Place Autocomplete) directement dans les champs de texte de l’application. C’est une fonction clé pour les applications de livraison, de taxi et de logistique — l’utilisateur commence à taper une adresse et le SDK suggère des options de la base de données Google Maps. Place Autocomplete réduit les erreurs de saisie d’adresse de 80% par rapport à la saisie manuelle. Facturation Places API: 2,83 $ pour 1000 requêtes Place Details, Place Search — 4,71 $ pour 1000.

kotlin
// Rechercher un lieu par texte sur Android
val placesClient = Places.createClient(context)
val request = FindCurrentPlaceRequest.builder(
    listOf(Place.Field.NAME, Place.Field.ADDRESS)
).build()

placesClient.findCurrentPlace(request)
    .addOnSuccessListener { response ->
        for (placeLikelihood in response.placeLikelihoods) {
            Log.d("Places", "${placeLikelihood.place.name} - ${placeLikelihood.likelihood}")
        }
    }

Place Autocomplete

Geocoding API — géocodage inverse (coordonnées vers adresse) et direct (adresse vers coordonnées). Utilisé pour convertir une adresse saisie par l’utilisateur en coordonnées pour l’affichage sur la carte. Geocoding API est facturé séparément: 4,71 $ pour 1000 requêtes. Google fournit 200 requêtes gratuites par jour par compte pour les tests.

Directions API: Construction d’itinéraires

Directions API est un service de calcul d’itinéraires entre deux ou plusieurs points en tenant compte du mode de transport (voiture, à pied, vélo, transport en commun). L’API renvoie plusieurs itinéraires alternatifs avec la distance, le temps de trajet, les instructions étape par étape et une polyligne pour tracer l’itinéraire sur la carte. Directions API est disponible en tant qu’API REST et via des SDK clients.

Fonctionnalité étendue — Routes API (nouvelle API recommandée par Google depuis 2024). Routes API offre un routage amélioré avec trafic en temps réel, routage écologique et analyse prédictive de l’heure d’arrivée. Selon Google, Routes API calcule le temps de trajet 20% plus précisément en milieu urbain par rapport à Directions API classique. Routes API est facturé à 5,00 $ pour 1000 requêtes.

kotlin
// Demande d’itinéraire via Routes API
val client = OkHttpClient()
val requestBody = """
    {
        "origin": {"location": {"latLng": {"latitude": 55.75, "longitude": 37.61}}},
        "destination": {"location": {"latLng": {"latitude": 55.79, "longitude": 37.79}}},
        "travelMode": "DRIVE",
        "routingPreference": "TRAFFIC_AWARE"
    }
""".trimIndent()

val request = Request.Builder()
    .url("https://routes.googleapis.com/directions/v2:computeRoutes")
    .header("X-Goog-Api-Key", apiKey)
    .header("Content-Type", "application/json")
    .post(requestBody.toRequestBody())
    .build()

client.newCall(request).enqueue(object : Callback {
    override fun onResponse(call: Call, response: Response) {
        Log.d("Route", response.body?.string() ?: "")
    }
})

Directions API prend en charge jusqu’à 25 points de passage (waypoints) pour un seul itinéraire. Les points de passage peuvent être spécifiés comme coordonnées ou Place IDs. Pour optimiser l’ordre des points (problème du voyageur de commerce), utilisez le paramètre optimize:true. Tarifs: Directions API — 4,71 $ pour 1000 requêtes (jusqu’à 10 points), chaque point supplémentaire ajoute 50% au coût de la requête.

Personnalisation des cartes: Styles, marqueurs et fenêtres d’information

Google Maps SDK offre de vastes options de personnalisation: modification du schéma de couleurs de la carte via des styles JSON, ajout de marqueurs personnalisés (y compris animés), fenêtres d’information (InfoWindow) avec contenu personnalisé et superposition de couches graphiques (GroundOverlay, Circle, Polygon). La personnalisation permet d’adapter la carte à la marque de l’application et d’améliorer l’expérience utilisateur.

Le stylisme de cartes se fait via Google Maps Styling Wizard ou un fichier JSON au format Map Style. Vous pouvez modifier les couleurs des routes (featureType: road), de l’eau (water), des parcs (poi.park), des bâtiments (building) et d’autres éléments. Pour les cartes en mode sombre, utilisez un style nocturne avec fond sombre et couleurs atténuées. Google Maps prend en charge jusqu’à 100 règles de style dans un seul fichier JSON.

Élément de personnalisationMéthode/ClasseDescription
MarqueursMarkerOptions.icon(BitmapDescriptor)Icône de marqueur personnalisée depuis des ressources ou une URL
PolylignesPolylineOptions.color(width)Lignes pour afficher les itinéraires avec couleur personnalisée
PolygonesPolygonOptions.fillColor(strokeColor)Remplissage de zone avec transparence et contour
InfoWindowGoogleMap.setInfoWindowAdapterContenu personnalisé de la fenêtre d’information (tout View)
GroundOverlayGroundOverlayOptions.image(BitmapDescriptor)Image superposée sur la zone de la carte

Clustering pour les performances

Clustering — regroupement de marqueurs en clusters lorsqu’il y a un grand nombre de points sur la carte. Google Maps SDK pour Android et iOS inclut un utilitaire de clustering intégré (com.google.maps.android:android-maps-utils). Le clustering empêche la saturation de la carte par les marqueurs à des niveaux de zoom bas. En zoomant, le cluster se divise automatiquement en marqueurs individuels. Selon Google, le clustering améliore les performances de la carte de 40% avec 1000+ marqueurs.

Exemple de code: Carte avec marqueurs en Kotlin

Un exemple complet d’affichage d’une carte avec un marqueur personnalisé, une polyligne d’itinéraire et une fenêtre d’information. L’application montre une carte de Moscou avec un point d’intérêt et un itinéraire depuis le centre-ville. Le code démontre les principales fonctionnalités de Google Maps SDK: ajout d’un marqueur, dessin d’une polyligne, déplacement de la caméra et gestion des clics.

kotlin
class MapDemoActivity : AppCompatActivity(), OnMapReadyCallback {

    override fun onMapReady(map: GoogleMap) {
        val kremlin = LatLng(55.7513, 37.6189)
        val gorkyPark = LatLng(55.7311, 37.6116)

        map.addMarker(MarkerOptions()
            .position(kremlin)
            .title("Kremlin")
            .icon(BitmapDescriptorFactory.defaultMarker(
                BitmapDescriptorFactory.HUE_RED)))

        map.addPolyline(PolylineOptions()
            .add(kremlin, gorkyPark)
            .width(5f)
            .color(Color.parseColor("#2196F3")))

        map.moveCamera(CameraUpdateFactory
            .newLatLngZoom(kremlin, 13f))

        map.setOnInfoWindowClickListener { marker ->
            Toast.makeText(this,
                "${marker.title} clicked",
                Toast.LENGTH_SHORT).show()
        }
    }
}

Recommandations de performances: utilisez le chargement asynchrone des marqueurs via ClusterManager lorsqu’il y a plus de 200 points, limitez le nombre de polylignes visibles (Google recommande pas plus de 100 simultanément), utilisez le mode Lite pour les cartes qui ne nécessitent pas de fonctionnalités complètes (défilement sans changement de zoom). Le mode Lite réduit la consommation mémoire de 50% et accélère le chargement de la carte de 2 fois.

Tarifs et limites de Google Maps Platform

Google Maps Platform utilise un modèle de paiement à l’utilisation avec une limite gratuite mensuelle de 200 $ de crédit. Chaque API est facturée séparément: Maps SDK — 2,83 $ pour 1000 chargements de carte, Places API — 4,71 $ pour 1000 requêtes, Directions API — 4,71 $ pour 1000 itinéraires. Routes API (recommandé) — 5,00 $ pour 1000 requêtes. La limite gratuite de 200 $ couvre généralement jusqu’à 70 000 chargements de carte par mois.

Pour les projets à fort trafic, Google offre des réductions pour des volumes de 500 000+ requêtes par mois. Google Maps SDK n’est pas facturé pour l’affichage d’une carte de base sans interaction — les frais ne s’appliquent que pour le chargement de la carte. Chaque fois qu’un utilisateur ouvre un écran avec une carte, cela compte comme un chargement. Optimisation: la mise en cache des tuiles de carte réduit le nombre de chargements lors des ouvertures répétées.

Limites: 300 requêtes par minute pour Places API (peut être augmenté à 3000 via le quota dans Cloud Console). Pour Directions API — 100 requêtes par minute. Le dépassement de la limite renvoie l’erreur OVER_QUERY_LIMIT. Google recommande d’utiliser un backoff exponentiel pour les nouvelles tentatives. Le suivi de l’utilisation est disponible dans Google Cloud Console avec un délai allant jusqu’à 5 minutes.

Foire aux questions

Combien coûte l’utilisation de Google Maps SDK dans une application mobile?

Google Maps SDK est facturé selon le modèle de paiement à l’utilisation: 2,83 $ pour 1000 chargements de carte. Chaque mois, Google fournit 200 $ de crédits gratuits, qui couvrent jusqu’à 70 000 chargements de carte. Places API et Directions API sont facturés séparément. Pour les petits projets avec jusqu’à 10 000 utilisateurs, les coûts varient généralement entre 10 et 50 $ par mois.

Peut-on utiliser Google Maps SDK sans connexion Internet?

Oui, Google Maps SDK prend en charge les cartes hors ligne via la mise en cache des tuiles. Le SDK met automatiquement en cache jusqu’à 1000 tuiles (environ une zone de 10x10 km). Pour une prise en charge hors ligne complète, utilisez Google Maps Offline API pour Android, qui permet de télécharger la carte d’une région entière. Les cartes hors ligne ne prennent pas en charge le trafic, les itinéraires ni Places API.

Quelle est la différence entre Google Maps SDK et Apple MapKit?

Google Maps SDK offre un ensemble de données plus large: 250 millions de lieux, trafic en temps réel, Street View, Indoor Maps. Apple MapKit est gratuit mais dispose de moins de données en dehors des États-Unis et de l’Europe. Google SDK nécessite une clé API et un paiement, Apple MapKit non. Pour les projets multiplateformes, Google Maps SDK est préférable avec une seule API pour les deux plateformes.

Comment obtenir une clé API gratuite pour Google Maps?

La clé API est créée dans Google Cloud Console sous APIs and Services, Credentials. Vous devez lier la clé à un compte de facturation pour l’activer, mais Google fournit 200 $ de crédits gratuits mensuels. La clé peut être restreinte par IP, référent HTTP ou paquet Android/iOS Bundle ID. Aucune carte de crédit n’est requise pour les tests.

Google Maps SDK prend-il en charge le clustering de marqueurs?

Oui, Google Maps SDK prend en charge le clustering via la bibliothèque android-maps-utils (Android) et Google-Maps-iOS-Utils (iOS). ClusterManager regroupe automatiquement les marqueurs proches en un cluster avec un indicateur numérique. En zoomant, le cluster se divise en marqueurs individuels. Le clustering est obligatoire avec 200+ marqueurs pour maintenir les performances de la carte.

Résumé

  • Google Maps SDK — une plateforme pour intégrer cartes, géodonnées et navigation dans les applications mobiles
  • Maps SDK pour Android et iOS affiche des cartes interactives avec prise en charge des styles, marqueurs et couches
  • Places API — recherche de lieux, saisie semi-automatique d’adresses et géocodage pour les applications géodonnées
  • Directions API / Routes API — construction d’itinéraires avec prise en compte du trafic et jusqu’à 25 points de passage
  • Personnalisation comprend les styles JSON, marqueurs personnalisés, InfoWindow, clustering et GroundOverlay
  • Tarifs — paiement à l’utilisation à partir de 2,83 $ pour 1000 chargements de carte avec limite gratuite de 200 $ par mois
  • Clé API obligatoire, liée à un projet dans Google Cloud Console et restreinte par plateforme

Nous développerons une application mobile clé en main

IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.

Discuter du projet

Lisez aussi