Utilizzo dell'SDK di Maps per Android v3.1.0 BETA

La versione 3.1.0 beta di Maps SDK for Android è una nuova implementazione con la stessa piattaforma API della versione precedente (tutte le classi e i metodi rimangono invariati) e alcune nuove funzionalità che puoi provare:

  • Personalizzazione di Maps
  • Gestione della collisione degli indicatori
  • Personalizzazione di poliline

Questa guida illustra come utilizzare le nuove funzionalità.

Personalizzazione di Maps (beta)

La personalizzazione delle mappe basata su cloud offre una varietà di strumenti e funzionalità che consentono di personalizzare e gestire più facilmente gli stili delle mappe. Anziché definire lo stile della mappa nel codice utilizzando le API e gli SDK di Google Maps, puoi gestire le tue mappe e definire gli stili nella console Google Cloud. Per ulteriori informazioni, consulta la sezione Panoramica della personalizzazione delle mappe Android.

Gestione della collisione degli indicatori (beta)

Puoi specificare se gli indicatori personalizzati devono sostituire le etichette predefinite della mappa base in caso di conflitto e indicare la priorità relativa tra indicatori personalizzati. Per ulteriori informazioni, consulta la sezione Gestione della collisione tra indicatori (Android).

Personalizzazione di Polyline (beta)

Ora esistono diversi nuovi modi per personalizzare l'aspetto delle polilinee:

  • Le polilinee multicolore impostano i segmenti di polilinea su colori diversi.
  • Le polilinee di sfumatura colorano una polilinea utilizzando una sfumatura di due colori.
  • Polilinee stampate applica uno stile a una polilinea utilizzando le bitmap ripetute.

Creazione di una polilinea multicolore

Puoi utilizzare le sezioni per colorare singolarmente i segmenti di una polilinea creando oggetti StyleSpan e aggiungendoli a PolylineOptions con i metodi addSpan() o addSpans(). Per impostazione predefinita, ogni elemento dell'array imposta il colore del segmento pubblicitario corrispondente. Nell'esempio seguente viene illustrato l'impostazione dei colori del segmento per creare una polilinea con segmenti rossi e verdi:

Kotlin



val line = map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(StyleSpan(Color.RED))
        .addSpan(StyleSpan(Color.GREEN))
)

      

Java


Polyline line = map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(new StyleSpan(Color.RED))
        .addSpan(new StyleSpan(Color.GREEN)));

      

Creazione di una polilinea del gradiente

Puoi definire un gradiente specificando due interi a 32 bit alpha-rosso-verde-blu (ARGB) per specificare i colori di inizio e fine del tratto. Imposta questa proprietà nell'oggetto opzioni della forma chiamando PolylineOptions.addSpan(). L'esempio seguente mostra la creazione di una polilinea con gradiente rosso-giallo dal Woodland Park Zoo a Kirkland, WA.

Kotlin



val line = map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(
            StyleSpan(
                StrokeStyle.gradientBuilder(
                    Color.RED,
                    Color.YELLOW
                ).build()
            )
        )
)

      

Java


Polyline line = map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(new StyleSpan(StrokeStyle.gradientBuilder(Color.RED, Color.YELLOW).build())));

      

Creazione di una polilinea stampata

Puoi impostare l'aspetto di una polilinea su una texture bitmap ricorrente. A questo scopo, crea un valore StampStyle di TextureStyle, quindi imposta questa proprietà nell'oggetto opzioni della forma chiamando PolylineOptions.addSpan(), come mostrato di seguito:

Kotlin



val stampStyle =
    TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build()
val span = StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build())
map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(span)
)

      

Java


StampStyle stampStyle =
        TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build();
StyleSpan span = new StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build());
map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(span));

      

Importa la libreria di utilità compatibili con beta

Se utilizzi la libreria di utilità dell'API Android di Google Maps, dovrai anche aggiornare le dipendenze del progetto per sostituire la versione esistente con la versione compatibile con la versione beta:

  1. Importa la libreria util compatibile con la versione beta nel file build.gradle:
    implementation 'com.google.maps.android:android-maps-utils-v3:1.3.1'
    
  2. Rimuovi quanto segue da build.gradle per rimuovere la libreria di utilità non compatibili con beta:
    implementation 'com.google.maps.android:android-maps-utils:1.3.1'
    

Esegui gli esempi

Il repository di Google Samples su GitHub include app di esempio che dimostrano l'utilizzo dell'SDK Maps for Android v3.1.0 beta.