BETAVERSION 3.1.0 des Maps SDK for Android verwenden

Die Betaversion 3.1.0 des Maps SDK for Android ist eine neue Implementierung mit derselben API-Oberfläche wie die vorherige Version (alle Klassen und Methoden bleiben unverändert). Sie enthält aber einige neue Funktionen:

  • Kartenanpassung
  • Umgang mit Markierungskonflikten
  • Polylinienanpassung

In diesem Leitfaden erfahren Sie, wie Sie die neuen Funktionen verwenden können.

Kartenanpassung (Beta)

Beim cloudbasierten Gestalten von Karteninhalten steht Ihnen eine Vielzahl von Tools und Elementen zur Verfügung, mit denen Sie den Stil Ihrer Karten einfacher anpassen und verwalten können. Anstatt Ihre Karte mithilfe der APIs und SDKs von Maps im Code zu gestalten, können Sie sie in der Google Cloud Console verwalten und gestalten. Weitere Informationen sind unter Cloudbasiertes Gestalten von Karteninhalten verfügbar.

Umgang mit Markierungskonflikten (Beta)

Sie können angeben, ob benutzerdefinierte Markierungen die Standardlabels der Basiskarte überschreiben sollen, wenn es zu einem Konflikt kommt. Außerdem können Sie die relative Priorität zwischen benutzerdefinierten Markierungen festlegen. Weitere Informationen finden Sie unter Konflikte zwischen Markierungen, Labels und POIs verwalten.

Polylinienanpassung (Beta)

Es gibt jetzt mehrere neue Möglichkeiten, das Aussehen von Polylinien anzupassen:

  • Bei mehrfarbigen Polylinien können Sie Polyliniensegmente auf verschiedene Farben festlegen.
  • Bei Polylinien mit Farbverlauf lässt sich eine Polylinie mithilfe eines Verlaufs aus zwei Farben einfärben.
  • Bei gestempelten Polylinien können Sie jetzt Polylinien mithilfe von sich wiederholenden Bitmaps gestalten.

Mehrfarbige Polylinie erstellen

Sie können Spans verwenden, um einzelne Segmente einer Polylinie zu färben. Dazu erstellen Sie StyleSpan-Objekte und fügen sie mit der Methode addSpan() oder addSpans() zu PolylineOptions hinzu. Standardmäßig wird durch jeweils ein Element im Array die Farbe des entsprechenden Liniensegments festgelegt. Das folgende Beispiel zeigt, wie Sie Segmentfarben zum Erstellen einer Polylinie mit roten und grünen Segmenten festlegen:

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

      

Polylinie mit Farbverlauf erstellen

Um einen Farbverlauf zu definieren, können Sie zwei Alpha-Rot-Grün-Blau-Ganzzahlen (ARGB) mit 32 Bit für die Anfangs- und Endfarbe des Strichs angeben. Legen Sie diese Eigenschaft für das Optionsobjekt der Form fest, indem Sie PolylineOptions.addSpan() aufrufen. Das folgende Beispiel zeigt, wie Sie eine Polylinie vom Woodland Park Zoo nach Kirkland im US-Bundesstaat Washington erstellen, die einen Farbverlauf von Rot nach Gelb aufweist.

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

      

Gestempelte Polylinie erstellen

Sie können die Darstellung einer Polylinie auf eine sich wiederholende Bitmaptextur festlegen. Dazu erstellen Sie einen StampStyle von TextureStyle und legen diese Eigenschaft im Optionsobjekt der Form fest, indem Sie PolylineOptions.addSpan() wie hier dargestellt aufrufen:

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

      

Mit Betaversion kompatible Dienstprogrammbibliothek importieren

Wenn Sie die Google Maps Android API-Dienstprogrammbibliothek verwenden, müssen Sie auch die Projektabhängigkeiten aktualisieren, um die vorhandene Version durch die Version zu ersetzen, die mit der Betaversion kompatibel ist. Dazu gehen Sie so vor:

  1. Importieren Sie die mit der Betaversion kompatible Dienstprogrammbibliothek in die Datei build.gradle:
    implementation 'com.google.maps.android:android-maps-utils-v3:1.3.1'
    
  2. Löschen Sie Folgendes aus der Datei build.gradle, um die Version der Dienstprogrammbibliothek zu entfernen, die nicht mit der Betaversion kompatibel ist:
    implementation 'com.google.maps.android:android-maps-utils:1.3.1'
    

Beispiele ausführen

Das Google-Beispiel-Repository auf GitHub enthält Beispiel-Apps, die die Verwendung der Betaversion 3.1.0 von Maps SDK for Android demonstrieren.