Maps SDK na Android Utility Library

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Wybierz platformę: Android iOS

Szukasz zaawansowanych funkcji, które możesz dodać do map? Google Maps SDK for Android Utility Library to biblioteka zajęć typu open source, które przydają się do szerokiej gamy aplikacji. Repozytorium GitHub zawiera klasy narzędziowe i aplikację demonstracyjną, które ilustrują sposób użycia poszczególnych klas.

W tym filmie Chris Broadfoot rozmawia o bibliotece mediów społecznościowych, skupiając się na dekodowaniu polilinii, geometrii sferycznej i ikonach dymków.

Szybka konfiguracja

Aby zainstalować pakiet Maps Maps for Android Utility Library, postępuj zgodnie z przewodnikiem po konfiguracji.

Narzędzia

Mapa z warstwą GeoJSON

Zaimportuj GeoJSON do swojej mapy

Możesz przechowywać funkcje w formacie GeoJSON i używać tego narzędzia do renderowania ich jako warstwy na mapie. Wywołaj addLayer(), aby dodać dane geograficzne do mapy. Poszczególne funkcje możesz też dodawać, wywołując addFeature() przez przekazanie obiektu GeoJsonFeature.

Szczegółowe informacje znajdziesz w dokumentacji narzędzia GeoJSON w Mapach Google na Androida.

Mapa z warstwą KML

Importowanie pliku KML do mapy

Za pomocą tego narzędzia możesz przekonwertować obiekty KML na kształty geograficzne i wyrenderować je jako warstwę na mapie. Aby dodać warstwę do mapy, wywołaj obiekt addLayerToMap(). Aby uzyskać dostęp do właściwości w obiekcie KML, wywołaj właściwość getProperties() w dowolnym punkcie oznaczenia miejsca, naziemnym, dokumencie lub folderze.

Szczegółowe informacje znajdziesz w dokumentacji narzędzia KML dla Map Google na Androida.

Mapa z mapą termiczną

Dodawanie map termicznych do mapy

Mapy termiczne ułatwiają widzom poznanie dystrybucji i względnej intensywności punktów danych na mapie. Zamiast umieszczać znacznik w każdej lokalizacji, mapy termiczne odzwierciedlają rozkład danych na podstawie koloru i kształtu. Utwórz właściwość HeatmapTileProvider, przekazując odpowiednią kolekcję obiektów LatLng reprezentujących ciekawe miejsca na mapie. Następnie utwórz nowy obiekt TileOverlay, przekazując go dostawcy kafelka mapy termicznej, i dodaj nakładkę mapy do mapy.

Więcej informacji znajdziesz w dokumentacji narzędzia Mapa termiczna Map Google na Androida.

Mapa z ikonami z dymkiem

Dostosuj znaczniki za pomocą ikon dymków

Dodaj IconGenerator, aby wyświetlać fragmenty informacji na znacznikach. To narzędzie sprawia, że ikony znaczników mogą wyglądać jak okna informacyjne, ponieważ zawierają tylko tekst i inne treści. Jedną z zalet jest pozostawienie kilku otwartych znaczników, ale tylko jednego okna informacyjnego naraz. Możesz też zmienić styl znaczników, zmienić orientację znacznika lub treści oraz zmienić obraz tła znacznika/9 poprawek.

Mapa ze znacznikami klastrów

Zarządzaj klastrami znaczników

ClusterManager pomaga zarządzać wieloma znacznikami przy różnych poziomach powiększenia. Oznacza to, że możesz umieścić na mapie dużą liczbę znaczników, które nie są trudne do odczytania. Gdy użytkownik wyświetli mapę z dużym powiększeniem, pojawią się na niej pojedyncze znaczniki. Kiedy użytkownik pomniejsza obraz na niższy poziom, znaczniki gromadzą się razem w klastry, aby ułatwić przeglądanie mapy.

Więcej informacji znajdziesz w dokumentacji Narzędzia do grupowania znaczników w Mapach Google na Androida.

Mapa z wieloma warstwami

Dodawanie wielu warstw do tej samej mapy

Na tej samej mapie możesz wyświetlać funkcje z obiektów GeoJSON, KML i klastrów, a także własne znaczniki, linie łamane i wielokąty. Te warstwy można też ustawić jako interaktywne, dodając do każdej z nich detektor kliknięć. Wystarczy utworzyć instancję klasy MarkerManager, GroundOverlayManager, PolygonManager i PolylineManager, a potem przekazać je do konstruktorów GeoJsonLayer, KmlLayer lub ClusterManager. Następnie możesz użyć powyższych klas Manager, aby dodać do mapy własne znaczniki, linie łamane i wielokąty.

Szczegółowe informacje znajdziesz w dokumentacji dotyczącej prezentacji wielopoziomowej Map Google na Androida.

Mapa z zakodowaną linią łamaną

Kodowanie i dekodowanie linii łamanych

Funkcja PolyUtil przydaje się do konwersji zakodowanych linii łamanych i wielokątów na współrzędne geograficzne i odwrotnie.

W Mapach Google współrzędne szerokości i długości geograficznej definiują wielokąt lub wielokąt są zakodowane. Zapoznaj się ze szczegółowym objaśnieniem kodowania linii łamanych. Możesz uzyskać ten zakodowany ciąg odpowiedzi w odpowiedzi z interfejsu Google API, np. Route API.

Możesz skorzystać z PolyUtil w bibliotece narzędzi Maps SDK na Androida, aby zakodować sekwencję szerokości i długości geograficznej ('LatLngs') w zakodowanym ciągu ścieżki i zdekodować zakodowany ciąg w sekwencji LatLngs. Zapewni to interoperacyjność z usługami internetowymi interfejsów API Map Google.

Obliczony dystans między dwoma punktami na mapie

Obliczaj odległości, obszary i nagłówki za pomocą geometrii sferycznej

Za pomocą narzędzi do geometrii sferycznej w SphericalUtil możesz obliczać odległości, obszary i nagłówki na podstawie szerokości i długości geograficznej. Oto niektóre z metod dostępnych w narzędziu:

  • computeDistanceBetween() – zwraca odległość w metrach między 2 współrzędnymi szerokości i długości geograficznej.
  • computeHeading() – zwraca łożysko w stopniach między 2 współrzędnymi szerokości i długości geograficznej.
  • computeArea() – zwraca obszar w metrach kwadratowych zamkniętej ścieżki na Ziemi.
  • interpolate() – zwraca współrzędne szerokości i długości punktu, który leży w danym punkcie odległości między 2 punktami. W ten sposób możesz na przykład animować znacznik między dwoma punktami.

Pełną listę metod dostępnych w narzędziu znajdziesz w dokumentacji.