Aller au contenu

Configuration Android

GitHub
Enregistrement d'un émulateur Android avec Google Maps : épingles de localisation, zones de livraison, un itinéraire, 500 marqueurs groupés, une caméra 3D inclinée et des modes satellite

Android utilise le SDK de Google Maps. Ajoutez votre clé API comme métadonnée du manifeste dans android/app/src/main/AndroidManifest.xml inside <application>:

<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="${GOOGLE_MAPS_API_KEY}" />

À l'intérieur, android { defaultConfig { ... } } dans android/app/build.gradlemappez le placeholder vers une variable d'environnement ou un secret local :

android {
defaultConfig {
manifestPlaceholders = [
GOOGLE_MAPS_API_KEY: System.getenv("GOOGLE_MAPS_API_KEY") ?: "REPLACE_WITH_YOUR_GOOGLE_MAPS_API_KEY"
]
}
}

Exportez-le GOOGLE_MAPS_API_KEY avant le build, sinon Gradle injectera la chaîne de secours et le Maps SDK échouera au runtime.

Activer Maps SDK pour Android pour la clé dans la Google Cloud Console. Passez la même clé à NativeMap.create({ apiKey }) pour la cohérence avec les builds web.

Pendant create, le plugin attache un MapView sous la WebView Capacitor, appelle bringToFront() sur la WebView, et définit webView.setBackgroundColor(Color.TRANSPARENT) so your HTML UI can render above the map.

Pour les cartes intégrées, passez un élément conteneur à NativeMap.create({ element }). Le plugin mesure cet élément et synchronise le cadre de la carte native lors du redimensionnement ou du défilement.

Pour mode en arrière-planarrière-plan toBack: true et configurez config.x, config.y, config.width, et config.height (les valeurs par défaut du viewport s'appliquent si omis). Appelez updateLayout lorsque la taille ou l'orientation de la fenêtre change pour que le MapView reste aligné avec la WebView.