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 erfährst du, wie du die neuen Funktionen verwenden kannst.
Kartenanpassung (Beta)
Cloudbasierte Kartenstile bieten eine Vielzahl von Tools und Funktionen, mit denen du den Stil deiner Karten einfacher anpassen und verwalten kannst. 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)
Du kannst angeben, ob benutzerdefinierte Markierungen die Standardlabels der Basiskarte überschreiben sollen, wenn es zu einem Konflikt kommt. Außerdem kannst du 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 werden Polyliniensegmente auf verschiedene Farben festgelegt.
- Bei Farbverlaufspolygonen wird eine Polylinie mithilfe eines Verlaufs aus zwei Farben eingefärbt.
- Gestanzte Polylinien versehen eine Polylinie mithilfe von sich wiederholenden Bitmaps mit einem Stil.
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 jedes 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:
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)) )
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 dieses Attribut für das Optionsobjekt der Form fest, indem PolylineOptions.addSpan()
aufgerufen wird.
Das folgende Beispiel zeigt, wie Sie eine Polylinie von Woodland Park Zoo nach Kirkland im US-Bundesstaat Washington erstellen, die einen Farbverlauf von Rot zu Gelb hat.
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() ) ) )
Eine gestanzte 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:
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) )
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:
- 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'
- 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.
- Maps SDK for Android – Beispiele
- Places SDK for Android – Beispiele (nur zur Verwendung mit der Betaversion 3.1.0 des Maps SDK for Android)