Utilizzo di Maps SDK for Android v3.1.0 BETA

La versione 3.1.0 beta dell'SDK Maps per Android è una nuova implementazione con la stessa piattaforma API della versione precedente (tutti i corsi e i metodi rimangono invariati) e alcune nuove funzionalità da provare:

  • Personalizzazione di Maps
  • Gestione degli indicatori di collisione
  • Personalizzazione polilinea

Questa guida illustra come utilizzare le nuove funzionalità.

Personalizzazione di Maps (beta)

Gli stili delle mappe basati su cloud offrono una varietà di strumenti e funzionalità che ti consentono di personalizzare e gestire più facilmente lo stile delle mappe. Anziché definire lo stile della mappa nel codice utilizzando le API e gli SDK di Maps, puoi gestire e definire lo stile delle mappe in Google Cloud Console. Per ulteriori informazioni, consulta la sezione Panoramica sulla 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 collisione e indicare la priorità relativa tra gli indicatori personalizzati. Per saperne di più, vedi Marker Collision Handling (Android).

Personalizzazione di Polyline (beta)

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

  • Le polilinee multicolori impostano segmenti polilinea in colori diversi.
  • Le polilinee sfumatura colorano una polilinea utilizzando una sfumatura di due colori.
  • Con le polilinee stampate, puoi definire una polilinea utilizzando bitmap ripetute.

Creazione di una polilinea multicolore

Puoi utilizzare gli intervalli 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 nell'array imposta il colore del segmento di riga corrispondente. L'esempio seguente mostra come impostare i colori dei segmenti per creare una polilinea con segmenti rossi e verdi:

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)));

      

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))
)

      

Creazione di una polilinea sfumatura

Puoi definire un gradiente specificando due numeri interi alfa-rosso-verde-blu (ARGB) a 32 bit, per specificare i colori iniziale e finale del tratto. Imposta questa proprietà sull'oggetto opzioni della forma chiamando PolylineOptions.addSpan(). L'esempio seguente mostra come creare una polilinea dal gradiente rosso a giallo da Woodland Park Zoo a Kirkland, WA.

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())));

      

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()
            )
        )
)

      

Creazione di una polilinea timbrata

Puoi impostare l'aspetto di una polilinea su una texture bitmap ricorrente. Per farlo, crea un StampStyle di TextureStyle, quindi imposta questa proprietà nell'oggetto opzioni di shape chiamando PolylineOptions.addSpan() come mostrato di seguito:

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));

      

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)
)

      

Importa la libreria di utilità compatibile con la versione beta

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

  1. Importa la libreria di utilità 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 compatibile con la versione beta:
    implementation 'com.google.maps.android:android-maps-utils:1.3.1'
    

Esegui gli esempi

Il repository di esempi Google su GitHub include app di esempio che mostrano l'uso dell'SDK Maps 3.1.0 beta per Android.