Salta al contenuto principale
@capgo/capacitor-native-map API dei dispositivi Open source

Mappa Nativa plugin Capacitor

Google Maps su Android, Apple MapKit su iOS e Google Maps JS su web con un unico API per marker, camera e overlay

Installazione

bun add @capgo/capacitor-native-map bunx cap sync
npm, pnpm o yarn
  • npm install @capgo/capacitor-native-map
  • pnpm add @capgo/capacitor-native-map
  • yarn add @capgo/capacitor-native-map

Guida

Come usare Native Map in Capacitor

Utilizzo di @capgo/capacitor-native-map

Google Maps su Android, Apple MapKit su iOS e Google Maps JS sul web con un unico API TypeScript per marker, camera, forme, clustering ed eventi.

Installazione

bun add @capgo/capacitor-native-map
bunx cap sync

Cosa espone questo plugin

  • create: mappa incorporata in un elemento DOM, o toBack: true per una mappa dietro HTML trasparente.
  • updateLayout: ridimensiona e riposiziona la mappa nativa (pixel CSS).
  • setCamera / fitBounds: controllo della camera e del viewport.
  • addMarker / addMarkers / removeMarker: marker con listener per tap e drag.
  • enableClustering: raggruppa set di marker densi.
  • enableCurrentLocation: punto posizione utente se i permessi lo consentono.
  • Overlay: poligoni, polilinee, cerchi e tile layer (variano in base alla piattaforma).

Esempio di utilizzo

Mappa incorporata

import { NativeMap } from '@capgo/capacitor-native-map';

const map = await NativeMap.create({
  id: 'main-map',
  element: document.getElementById('map')!,
  apiKey: 'YOUR_GOOGLE_MAPS_API_KEY',
  config: {
    center: { lat: 37.7749, lng: -122.4194 },
    zoom: 12,
  },
});

map.setOnMapClickListener((e) => console.log(e.latitude, e.longitude));

// In a framework component, call `await map.destroy()` from your teardown/cleanup hook.

Mappa in background con UI HTML

const map = await NativeMap.create({
  id: 'stores-map',
  toBack: true,
  apiKey: 'YOUR_GOOGLE_MAPS_API_KEY',
  config: {
    center: { lat: 40.7128, lng: -74.006 },
    zoom: 11,
    x: 0,
    y: 0,
    width: window.innerWidth,
    height: window.innerHeight,
  },
});

await map.updateLayout({
  x: 0,
  y: 0,
  width: window.innerWidth,
  height: window.innerHeight,
});

Avvolgi le sezioni HUD con data-map-overlay (vedi getting started) così il CSS dell'overlay abilita i tap; le aree trasparenti passano i gesti alla mappa.

Riferimento completo

FAQ

FAQ sul plugin Native Map

Come installo il plugin Native Map in un'app Capacitor?

Esegui "bun add @capgo/capacitor-native-map" (o "npm install @capgo/capacitor-native-map"), poi esegui "bunx cap sync" in modo che i progetti iOS e Android carichino le code native. Importalo da "@capgo/capacitor-native-map" nel tuo code.

@capgo/capacitor-native-map funziona con React, Vue e Angular?

Sì. Native Map è un pacchetto Capacitor, quindi funziona con qualsiasi framework web che giri all'interno di Capacitor, inclusi Ionic, React, Vue, Angular, Svelte e JavaScript puro.

Quale versione di Capacitor è supportata da @capgo/capacitor-native-map?

I plugin Capgo seguono la major version di Capacitor: usa la major version del plugin che corrisponde alla tua major version di Capacitor (ad esempio plugin v8 con Capacitor 8). La tabella di compatibilità nel README di GitHub elenca le versioni mantenute.

@capgo/capacitor-native-map è free e open source?

Sì. Il codice sorgente code è pubblico su GitHub all'indirizzo https://github.com/Cap-go/capacitor-native-map/ e il pacchetto è gratuito su npm. Bug report e pull request sono i benvenuti.

Posso aggiornare code che usa Native Map senza passare per la revisione dell'App Store?

Installare o aggiornare il plugin modifica il code nativo, quindi serve una nuova build per lo store. Dopo, le modifiche a JavaScript, HTML e CSS che chiamano il plugin possono essere rilasciate subito con i live update di Capgo.

Distribuisci modifiche a Native Map senza attendere la revisione dell'app

Una volta incluso il plugin nel tuo store build, Capgo live updates invia le modifiche a JavaScript, HTML e CSS agli utenti in pochi minuti.

Inizia con Capgo