Rozszerzenia Kotlin (KTX) do Map na Androida to zbiór rozszerzeń Kotlin do pakietu Maps SDK na Androida i biblioteki narzędziowej pakietu Maps SDK na Androida. Te rozszerzenia udostępniają funkcje języka Kotlin, które umożliwiają pisanie zwięzłego i idiomatycznego kodu w tym języku podczas tworzenia aplikacji korzystających z pakietu Maps SDK na Androida. Biblioteka Maps KTX jest dostępna na licencji open source i można ją pobrać z GitHub wraz z przykładami.
Instalacja
Aby zainstalować KTX dla pakietu Maps SDK na Androida i opcjonalnie dla biblioteki narzędziowej pakietu Maps SDK na Androida, dodaj te zależności do pliku build.gradle.kts
.
dependencies { // KTX for the Maps SDK for Android library implementation("com.google.maps.android:maps-ktx:5.2.0") }
Przykłady użycia
Biblioteka KTX umożliwia korzystanie z kilku funkcji języka Kotlin, takich jak funkcje rozszerzające, nazwane parametry i argumenty domyślne, deklaracje rozkładu i procedury współbieżne.
Pobieranie obiektu GoogleMap za pomocą korutyn
Dostęp do GoogleMap
można uzyskać za pomocą korutyn.
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { val mapFragment: SupportMapFragment? = supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment val googleMap: GoogleMap? = mapFragment?.awaitMap() } }
Dodawanie znacznika
Marker można dodać za pomocą metody w stylu DSL addMarker()
.
val sydney = LatLng(-33.852, 151.211) val marker = googleMap.addMarker { position(sydney) title("Marker in Sydney") }
Zbieranie zdarzeń zarejestrowanych przez kamerę
Zdarzenia, takie jak ruchy kamery, można zbierać za pomocą Kotlin Flow.
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { googleMap.cameraMoveEvents().collect { print("Received camera move event") } } }
Pełną listę obsługiwanych funkcji znajdziesz w dokumentacji.
Wypróbuj przykładową aplikację
Repozytorium GitHub tej biblioteki zawiera też aplikację demonstracyjną, która pokazuje, jak używać biblioteki Maps KTX we własnej aplikacji.
Aby wypróbować aplikację demonstracyjną, wykonaj te czynności:
- Sklonuj lub pobierz plik ZIP z GitHub.
- W Android Studio wybierz File –> Open (Plik –> Otwórz) i otwórz sklonowany lub pobrany folder.
- Dodaj klucz interfejsu API do aplikacji demonstracyjnej.
- Uzyskaj klucz Maps SDK na Androida
- W katalogu głównym utwórz plik o nazwie
secrets.properties
. Aby chronić klucz interfejsu API, ten plik NIE powinien być objęty kontrolą wersji. - Dodaj ten wiersz do pliku
secrets.properties
gdzieMAPS_API_KEY="YOUR_API_KEY"
YOUR_API_KEY
to rzeczywisty klucz interfejsu API uzyskany w pierwszym kroku. Możesz na przykład zapoznać się zsecrets.defaults.properties
. - W konfiguracji uruchomienia wybierz moduł app-ktx.
- Kliknij Run 'app-ktx' (Uruchom „app-ktx”).
Co dalej?
Może Cię też zainteresować inne biblioteki rozszerzeń Kotlin dla Platformy Map Google:
- KTX w przypadku biblioteki narzędziowej pakietu SDK Map na Androida
- KTX w pakiecie SDK Miejsc na Androida