Auf der Google Maps Platform ist bald eine neue Version der Funktionen für das cloudbasierte Gestalten von Karteninhalten verfügbar. Die Aktualisierung umfasst eine neue Standardfarbvorlage und Optimierungen in Bezug auf die Nutzerfreundlichkeit der Karten. Alle Kartenstile werden im März 2025 automatisch aktualisiert. Weitere Informationen zur Verfügbarkeit und Aktivierung sind unter Neuer Kartenstil für die Google Maps Platform verfügbar.
Sie möchten erweiterte Funktionen für Ihre Karten implementieren? Die Maps SDK for Android-Dienstprogrammbibliothek ist eine Open-Source-Bibliothek mit Klassen, die für eine Reihe von Anwendungen nützlich sind. Das GitHub-Repository enthält die Dienstprogrammklassen und eine Demo-App, in der die Verwendung der einzelnen Klassen gezeigt wird.
In diesem Video erörtert Chris Broadfoot die Dienstprogrammbibliothek. Schwerpunktthemen sind dabei die Decodierung von Polylinien, sphärische Geometrie und Infofeldsymbole.
Sie können Elemente im GeoJSON-Format speichern und sie mit diesem Dienstprogramm als Ebene über einer Karte rendern.
Rufen Sie addLayer() auf, um Ihre GeoJSON-Daten der Karte hinzuzufügen.
Außerdem haben Sie die Möglichkeit, einzelne Elemente hinzuzufügen, indem Sie addFeature() aufrufen und ein GeoJsonFeature-Objekt übergeben.
Mit diesem Dienstprogramm können Sie KML-Objekte in geografische Formen umwandeln und als Ebene über einer Karte rendern. Rufen Sie addLayerToMap() auf, um die Ebene der Karte hinzuzufügen. Um auf die Eigenschaften eines KML-Objekts zuzugreifen, rufen Sie getProperties() für eine Ortsmarkierung, ein Boden-Overlay, ein Dokument oder einen Ordner auf.
Mit Heatmaps können Nutzer die Verteilung und relative Intensität von Datenpunkten auf einer Karte leichter erkennen. Statt eine Markierung an jedem Standort zu platzieren, verwenden Heatmaps Farben und Formen, um die Verteilung von Daten darzustellen. Erstellen Sie einen HeatmapTileProvider und übergeben Sie eine Sammlung von LatLng-Objekten, die POIs auf der Karte darstellen. Erstellen Sie dann ein neues TileOverlay, übergeben Sie den Heatmap-Kachelanbieter und nehmen Sie das Kachel-Overlay in die Karte auf.
Fügen Sie einen IconGenerator hinzu, um Snippets mit Informationen für Ihre Markierungen anzuzeigen. Dieses Dienstprogramm bietet eine Möglichkeit, Markierungssymbole ähnlich wie Infofenster zu gestalten, und zwar so, dass die Markierung auch selbst Text und andere Inhalte enthalten kann. Der Vorteil besteht darin, dass mehrere Markierungen gleichzeitig geöffnet sein können, im Unterschied zu Infofenstern, von denen immer nur eines angezeigt werden kann.
Sie können Markierungen außerdem mit einem Stil versehen, ihre Ausrichtung und/oder Inhalte ändern und ihr Hintergrundbild (9-Patch-Datei) ersetzen.
Markierungs-Cluster verwalten
Mit ClusterManager können Sie mehrere Markierungen bei verschiedenen Zoomfaktoren verwalten. Sie können also eine große Anzahl Markierungen auf einer Karte setzen, ohne die Lesbarkeit der Karte zu stark zu beeinträchtigen. Wenn ein Nutzer die Karte mit einer hohen Zoomstufe ansieht, werden die einzelnen Markierungen auf der Karte angezeigt. Zoomt er heraus, werden die Markierungen zu Clustern zusammengefügt, damit sich die Karte besser betrachten lässt.
Neben Elementen aus GeoJSON, KML und Clustern können Sie auch eigene Markierungen, Polylinien und Polygone auf einer Karte anzeigen. Die entsprechenden Ebenen lassen sich interaktiv gestalten. Dazu wird jeder Ebene ein Klick-Listener hinzugefügt.
Instanziieren Sie einfach die Klassen MarkerManager, GroundOverlayManager, PolygonManager und PolylineManager und übergeben Sie sie bei der Einrichtung an die Konstruktoren von GeoJsonLayer, KmlLayer und ClusterManager. Anschließend können Sie die oben genannten Manager-Klassen direkt verwenden, um der Karte eigene Markierungen, Polylinien und Polygone hinzuzufügen.
PolyUtil ist nützlich, um codierte Polylinien und Polygone in Breiten- und Längengradkoordinaten zu konvertieren und umgekehrt.
In Google Maps werden Breiten- und Längengrade zur Definition von Polylinien und Polygonen als codierter String gespeichert. Ausführliche Informationen finden Sie unter Algorithmusformat für codierte Polylinien. Dieser codierte String kann in einer Antwort von einer Google API zurückgegeben werden, z. B. der Directions API.
Sie können PolyUtil in der Maps SDK for Android-Dienstprogrammbibliothek verwenden, um eine Folge von Breiten- und Längengradkoordinaten ('LatLngs') in einen codierten Pfadstring zu codieren und umgekehrt einen codierten Pfadstring in eine Folge von Breiten- und Längengradkoordinaten zu decodieren. Auf diese Weise wird die Interoperabilität mit den Webdiensten der Google Maps APIs sichergestellt.
Entfernungen, Bereiche und Richtungen über sphärische Geometrie berechnen
Mit den Dienstprogrammen für sphärische Geometrie in SphericalUtil lassen sich Entfernungen, Flächen und Ausrichtungen anhand von Breiten- und Längengraden berechnen. Im Dienstprogramm sind u. a. folgende Methoden verfügbar:
computeDistanceBetween(): gibt die Entfernung zwischen zwei Breiten- und Längengradkoordinaten in Metern zurück
computeHeading(): gibt die Neigung zwischen zwei Breiten- und Längengradkoordinaten in Grad zurück
computeArea(): Gibt die Fläche eines geschlossenen Pfads auf der Erde in Quadratmetern zurück
interpolate(): Gibt die Breiten-/Längengrad-Koordinaten eines Punkts zurück, der an einem bestimmten Bruchteil der Entfernung zwischen zwei angegebenen Punkten liegt. Mit dieser Methode lässt sich beispielsweise eine Markierung zwischen zwei Punkten animieren.
Eine vollständige Liste der Methoden im Dienstprogramm finden Sie in der Referenzdokumentation.
Prüfen, ob Street View-Daten für einen Standort verfügbar sind
Mit der Klasse StreetViewUtil lässt sich prüfen, ob ein Standort in Street View unterstützt wird. Sie können Fehler beim Hinzufügen von Street View-Panoramen vermeiden, indem Sie dieses Metadaten-Dienstprogramm aufrufen und ein Panorama nur dann zu einer Android-App hinzufügen, wenn das Dienstprogramm als Antwort OK zurückgibt.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2024-08-13 (UTC)."],[[["The Maps SDK for Android Utility Library is an open-source library offering advanced features for enhancing Google Maps in Android applications."],["It provides utilities for importing GeoJSON and KML data, adding heatmaps, clustering markers, managing multiple map layers, and working with polylines."],["The library includes features for customizing markers with bubble icons and performing spherical geometry calculations for distances, areas, and headings."],["Developers can quickly set up the library by following the provided setup guide and access detailed documentation for each utility."],["A demo app is included in the GitHub repository showcasing the usage of the various classes and functionalities within the library."]]],[]]