Un ID mappa è un identificatore univoco utilizzato per rappresentare una singola istanza di una mappa Google. Utilizzi gli ID mappa per attivare funzionalità o gestire o stilizzare le mappe sui tuoi siti web e nelle tue applicazioni. Puoi creare ID mappa per ogni piattaforma di cui hai bisogno (JavaScript, Android, iOS o mappe statiche) nel progetto della console Google Cloud nella pagina Gestione mappa.
Cosa puoi fare con gli ID mappa
Utilizza gli ID mappa per attivare funzionalità e stili. Ecco alcuni esempi di come utilizzare gli ID mappa. Per un elenco completo, consulta la sezione Funzionalità che utilizzano gli ID mappa:
Stili delle mappe basati su cloud: associa un ID mappa a uno stile per personalizzare, gestire e applicare stili alle mappe utilizzando la console Google Cloud. Disponibile su tutte le piattaforme: JavaScript, Android, iOS, e API Maps Static.
Mappe vettoriali: utilizza un ID mappa per utilizzare una mappa composta da riquadri basati su vettori che vengono disegnati al momento del caricamento lato client utilizzando WebGL. Disponibile su JavaScript.
Indicatori avanzati: utilizza un ID mappa per attivare gli indicatori avanzati. Disponibile su JavaScript, Android e iOS.
Esempio di personalizzazione delle mappe basata su cloud
Per utilizzare la personalizzazione delle mappe basata su cloud per applicare stili alle mappe sul tuo sito web e nelle app per Android:
Crea ID mappa per ogni piattaforma che utilizzi. Ad esempio, crea un ID mappa JavaScript e un ID mappa Android. Per maggiori dettagli, consulta Creare ID mappa.
Configura uno stile di mappa nella console Google Cloud. Per maggiori dettagli, consulta la sezione sulla personalizzazione delle mappe basata su cloud.
Associa entrambi gli ID mappa allo stile di mappa nella console Google Cloud. Per maggiori dettagli, vedi Associare gli ID mappa allo stile.
Fai riferimento all'ID mappa nel codice JavaScript del tuo sito web e nel codice dell'app per Android. Per maggiori dettagli, vedi Aggiungere un ID mappa all'app.
Lo stile della mappa associato ai tuoi ID mappa viene visualizzato sul tuo sito web e nella tua app per Android. Puoi aggiornare lo stile della mappa nella console Cloud e le modifiche vengono visualizzate automaticamente in entrambi i luoghi, senza che i clienti debbano aggiornare l'app.
Elementi che utilizzano gli ID mappa
La tabella seguente mostra le funzionalità e le API di Google Maps Platform che utilizzano gli ID mappa:
Funzionalità o API | Utilizza gli ID mappa per raggiungere questi obiettivi |
---|---|
Indicatori avanzati | Attiva gli indicatori avanzati. Non è necessario creare un ID mappa, ma puoi utilizzare l'ID mappa di esempio "DEMO_MAP_ID". |
Stili basati sui dati per i confini | Associa l'ID mappa a un insieme di confini e stili per dare uno stile alla mappa in base ai confini. |
Stili basati sui dati per i set di dati | Associa l'ID mappa a un insieme di dati e stili per applicare uno stile alla mappa in base al set di dati. |
Flutter | Personalizza le mappe di Google utilizzate nelle tue app Flutter. |
API Maps Embed | Specifica e personalizza la mappa da incorporare in una pagina web. |
API Maps JavaScript | Personalizza la mappa da visualizzare in una pagina web. |
SDK Maps for Android | Applica uno stile alla mappa da visualizzare in un'applicazione Android.1 |
SDK Maps for iOS | Applica uno stile alla mappa da visualizzare in un'applicazione per iOS.1 |
API Maps Static | Specifica e personalizza la mappa da visualizzare come immagine statica. |
Soluzioni di mobilità | Utilizza l'API Maps JavaScript e gli SDK per Android e iOS per applicare uno stile alle mappe nelle soluzioni di mobilità.1 |
WebGL (mappe vettoriali) | Attiva le funzionalità WebGL utilizzando un ID mappa vettoriale JavaScript. |
1 L'utilizzo di un ID mappa in Maps SDK for Android o in Maps SDK for iOS attiva un caricamento mappa che viene addebitato in base allo SKU di Dynamic Maps.
Come creare e utilizzare gli ID mappa
Un ID mappa è un identificatore univoco che rappresenta una singola istanza di una mappa Google. Puoi creare ID mappa e aggiornare lo stile mappa associato a un ID mappa in Cloud Console.
Autorizzazioni obbligatorie
Per creare o gestire gli ID mappa nel tuo progetto, devi utilizzare un'entità con le autorizzazioni a livello di ruolo appropriate, Editor o Proprietario, nella pagina IAM di Cloud Console per il progetto. Per maggiori dettagli, consulta la documentazione di riferimento sui ruoli di base e predefiniti IAM.
Creare ID mappa
Puoi creare ID mappa e aggiornare uno stile associato a un ID mappa in qualsiasi momento nella console Cloud.
Per creare un ID mappa:
Accedi e apri un progetto Cloud Console con le autorizzazioni richieste.
In Cloud Console, vai alla pagina Gestione mappe.
Seleziona Crea ID mappa.
Nella pagina Crea nuovo ID mappa:
- In Nome, assegna un nome all'ID mappa.
- (Facoltativo) In Descrizione, descrivi lo scopo dell'ID mappa.
- Per Tipo di mappa, seleziona la piattaforma su cui intendi utilizzare l'ID mappa. Se scegli JavaScript, scegli anche un tipo di mappa Raster (predefinito) o Vettore. Per ulteriori informazioni sulle mappe vettoriali, consulta Mappe vettoriali.
- Seleziona Salva per visualizzare il nuovo ID mappa.
Associare un ID mappa a uno stile di mappa
Queste istruzioni presuppongono che nel progetto sia già presente almeno uno stile mappa. Se non hai stili mappa, consulta la sezione Personalizzazione delle mappe basata su cloud e seleziona la tua piattaforma per istruzioni su come crearne uno.
- In Cloud Console, vai alla pagina Gestione mappe.
- Nella tabella, seleziona un ID mappa esistente.
- In Stile di mappa associato, seleziona uno stile di mappa.
Seleziona Salva.
Aggiungi l'ID mappa all'app
Android
Aggiungi l'ID mappa tramite un elemento <fragment>
nel
file di layout dell'attività, utilizzando la classe MapView
o programmaticamente
utilizzando la classe GoogleMapOptions
.
Ad esempio, supponiamo di aver creato un ID mappa memorizzato come valore di stringa denominato map_id
in res/values/strings.xml
:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="map_id">MAP_ID</string>
</resources>
Per le mappe aggiunte tramite un elemento <fragment>
nel file di layout dell'attività, tutti i frammenti di mappa che devono avere lo stile personalizzato devono specificare l'ID mappa nell'attributo map:mapId
:
<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
map:name="com.google.android.gms.maps.SupportMapFragment"
…
map:mapId="@string/map_id" />
Puoi anche utilizzare l'attributo map:mapId
della classe MapView
per specificare un ID mappa:
<com.google.android.gms.maps.MapView
xmlns:android="http://schemas.android.com/apk/res/android"
....
map:mapId="@string/map_id" />
Per specificare un ID mappa in modo programmatico, passalo a un'istanza MapFragment
utilizzando la classe GoogleMapOptions
:
Java
MapFragment mapFragment = MapFragment.newInstance(
new GoogleMapOptions()
.mapId(getResources().getString(R.string.map_id)));
Kotlin
val mapFragment = MapFragment.newInstance(
GoogleMapOptions()
.mapId(resources.getString(R.string.map_id))
)
In Android Studio, crea ed esegui la tua app come faresti normalmente. Gli stili personalizzati configurati nel primo passaggio vengono applicati a tutte le mappe con l'ID mappa specificato.
iOS
Per creare un'istanza di una mappa utilizzando un ID mappa, procedi nel seguente modo:
- Crea un
GMSMapID
con la stringa dell'ID mappa dalla console Cloud. - Crea un
GMSMapView
specificando l'ID mappa appena creato.
Swift
let camera = GMSCameraPosition(latitude: 47.0169, longitude: -122.336471, zoom: 12)
let mapID = GMSMapID(identifier: "MAP_ID")
let mapView = GMSMapView(frame: .zero, mapID: mapID, camera: camera)
self.view = mapView
Objective-C
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:47.0169
longitude:-122.336471
zoom:12];
GMSMapID *mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:mapID camera:camera];
self.view = mapView;
Se utilizzi il tuo ID mappa, puoi impostare il tuo ID mappa nella console Cloud per avere un nuovo stile in qualsiasi momento. Lo stile verrà applicato automaticamente alla visualizzazione della mappa per te e per gli utenti entro circa sei ore.
Se vuoi visualizzare immediatamente le modifiche, puoi chiudere e riavviare la tua app uscendo dall'app, forzandone l'uscita dall'elenco delle app utilizzate di recente e riavviandola. La mappa aggiornata sarà visibile.
JavaScript
Per creare una mappa con un ID mappa nel codice dell'applicazione:
Se stai già personalizzando la mappa con codice JSON incorporato, rimuovi la proprietà
styles
dall'oggettoMapOptions
. In caso contrario, salta questo passaggio.Aggiungi un ID mappa alla mappa utilizzando la proprietà
mapId
. Ad esempio:
map = new google.maps.Map(document.getElementById('map'), { center: {lat: -34.397, lng: 150.644}, zoom: 8, mapId: 'MAP_ID' });
Maps Static
Per aggiungere un ID mappa a una mappa nuova o esistente che utilizza una delle nostre API di servizio web, aggiungi il parametro URL map_id
e impostalo sull'ID mappa. Questo esempio mostra l'aggiunta di un ID mappa a una mappa utilizzando l'API Maps Static.
<img src="https://maps.googleapis.com/maps/api/staticmap?center=Brooklyn+Bridge,New+York,NY&zoom=13&size=600x300&maptype=roadmap&markers=color:blue%7Clabel:S%7C40.702147,-74.015794&markers=color:green%7Clabel:G%7C40.711614,-74.012318&markers=color:red%7Clabel:C%7C40.718217,-73.998284&key=YOUR_API_KEY&map_id=MAP_ID&signature=YOUR_SIGNATURE" />