Utilizza ID mappa
Un ID mappa è un identificatore associato a uno stile di mappa o a un elemento specifico. Configurare uno stile di mappa e associarlo a un ID mappa nella console Google Cloud. Poi, quando fai riferimento a un ID mappa nel tuo codice, lo stile di mappa associato viene visualizzato nella tua app. Eventuali aggiornamenti successivi dello stile che apporterai vengono visualizzati automaticamente nella tua app. senza bisogno di aggiornamenti da parte dei clienti.
Al momento della creazione, gli ID mappa vengono associati a un progetto e sono limitati a una singola piattaforma (Android, iOS, JavaScript) o all'API Maps Static.
Per creare o gestire qualsiasi ID mappa nella console Cloud, devi deve avere il Ruolo IAM Proprietario o Editor progetto.
Autorizzazioni obbligatorie
Per creare o gestire qualsiasi ID mappa o stili di mappa in un un dato progetto Google Cloud, devi disporre Ruolo IAM Proprietario o Editor del progetto.
Crea un ID mappa
Un ID mappa è un identificatore univoco che rappresenta una singola istanza di un 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:
- Nella console Cloud, vai alla Pagina di gestione di Maps.
- Seleziona Crea nuovo ID mappa per visualizzare la finestra di dialogo Crea
Nuovo ID mappa.
Nel modulo, segui questi passaggi:
- Specifica un nome per la mappa.
- Specifica un tipo di mappa o una piattaforma.
- Per le mappe JavaScript, scegli il tipo di mappa raster o vettoriale.
- Inserisci una descrizione della mappa.
- Seleziona Avanti 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 di mappa.
- Nella console Cloud, vai alla Pagina di gestione di Maps.
- In questa pagina, seleziona un ID mappa esistente dalla colonna Nome mappa.
- Nella parte inferiore di questo modulo, scegli uno stile di mappa dal menu a discesa Stili di mappa associati a questo ID mappa.
- Seleziona Salva.
Aggiungere l'ID mappa all'app
Android
Aggiungi l'ID mappa tramite un elemento <fragment>
nell'elenco delle attività
di layout utilizzando la classe MapView
o in modo programmatico mediante il
GoogleMapOptions
corso.
Ad esempio, supponiamo che tu abbia creato un ID mappa memorizzato come
valore stringa denominato map_id
in res/values/strings.xml
:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="map_id">YOUR_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
ID mappa nell'attributo map:mapId
:
<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
class="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 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. Stili personalizzati, come configurato nel primo passaggio, verrà applicato a tutte le mappe con un ID.
iOS
Per creare un'istanza di una mappa utilizzando un ID mappa, procedi nel seguente modo:
- Crea un elemento
GMSMapID
con la stringa 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: "<YOUR 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:@"<YOUR MAP ID>"];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:mapID camera:camera];
self.view = mapView;
Se utilizzi il tuo ID mappa, puoi impostare l'ID mappa nella console Cloud per avere un nuovo stile in qualsiasi momento questo stile si rifletterà automaticamente nella visualizzazione mappa per te e entro circa sei ore.
Se vuoi vedere le modifiche immediatamente, chiudi l'app e riavviala tua app chiudendo l'app, forzando l'uscita dall'app elenco di app e riaprirlo. La mappa aggiornata sarà visibile.
JavaScript
Per creare una mappa con un ID mappa nel codice dell'applicazione:
Se stai attualmente personalizzando la mappa con codice JSON incorporato, rimuovi il Proprietà
styles
dall'oggettoMapOptions
; altrimenti ignora 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 statico
Per aggiungere un ID mappa a una mappa nuova o esistente che utilizza una delle nostre
API web-service, 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=YOUR_MAP_ID&signature=YOUR_SIGNATURE" />
Funzionalità disponibili quando si utilizzano gli ID mappa
Personalizzazione delle mappe basata su cloud: applica, personalizza e gestisci le tue mappe con la console Google Cloud.
Disponibile su tutte le piattaforme (Android, JavaScript, iOS e API Maps Static)
Mappe vettoriali: una mappa composta da riquadri di dati vettoriali, che vengono disegnati al momento del caricamento
sul lato client tramite WebGL.
Disponibile su JavaScript