Mapy na Androida KTX

Rozszerzenia Maps Android Kotlin (KTX) to zbiór rozszerzeń Kotlin dla pakietu Maps SDK na Androida oraz biblioteki narzędziowej Maps SDK na Androida. Te rozszerzenia udostępniają funkcje w języku Kotlin, które umożliwiają pisanie zwięzłego i idiomatycznego języka Kotlin podczas programowania pod kątem pakietu SDK Map Google na Androida. Mapy KTX są udostępniane na licencji open source (razem z przykładami) na GitHub.

Instalacja

Aby zainstalować KTX dla pakietu Maps SDK na Androida i opcjonalnie dla biblioteki narzędziowej Maps SDK na Androida, dodaj te zależności do pliku build.gradle.

dependencies {

    // KTX for the Maps SDK for Android library
    implementation 'com.google.maps.android:maps-ktx:5.0.0'
}

Przykładowe zastosowania

Biblioteka KTX pozwala korzystać z kilku funkcji języka Kotlin, takich jak funkcje rozszerzeń, parametry nazwane i argumenty domyślne, deklaracje destrukcyjne i współprogramy.

Pobieranie mapy Google przy użyciu współprogramów

Dostęp do elementu GoogleMap można pobrać przy użyciu współprogramów.

lifecycleScope.launch {
  lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) {
    val mapFragment: SupportMapFragment? =
      supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment
    val googleMap: GoogleMap? = mapFragment?.awaitMap()
  }
}

Dodawanie znacznika

Znacznik można dodawać, korzystając z metody DSL addMarker().

val sydney = LatLng(-33.852, 151.211)
val marker = googleMap.addMarker {
  position(sydney)
  title("Marker in Sydney")
}

Zbieram dane o zdarzeniach wykrywanych przez kamery

Zdarzenia, takie jak ruch kamery, można rejestrować za pomocą narzędzia 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 referencyjnej.

Wypróbuj przykładową aplikację

Repozytorium GitHub tej biblioteki zawiera też aplikację demonstracyjną, która pokazuje, jak użyć biblioteki KTX Map Google we własnej aplikacji.

Aby wypróbować aplikację demonstracyjną, wykonaj te czynności:

  1. Skopiuj lub pobierz plik ZIP z GitHub.
  2. W Android Studio wybierz Plik -> Otwórz, a następnie przejdź do katalogu i otwórz nowo sklonowany lub pobrany folder.
  3. Dodaj klucz interfejsu API do aplikacji demonstracyjnej.
    1. Pobierz pakiet SDK Map Google na Androida Key
    2. W katalogu głównym utwórz plik o nazwie secrets.properties. Ten plik NIE powinien być pod kontrolą wersji w celu ochrony klucza interfejsu API.
    3. Dodaj ten pojedynczy wiersz do tabeli secrets.properties
      MAPS_API_KEY="YOUR_API_KEY"
      , gdzie YOUR_API_KEY to rzeczywisty klucz interfejsu API uzyskany w pierwszym kroku. Przykładem może być secrets.defaults.properties.
  4. W konfiguracji uruchamiania wybierz moduł app-ktx.
  5. Wybierz Uruchom „app-ktx”.

Co dalej?

Mogą Cię również zainteresować inne biblioteki rozszerzeń Kotlin dla Google Maps Platform:

  • KTX dla pakietu Map SDK dla biblioteki narzędziowej Androida.
  • KTX – dla pakietu Places SDK na Androida.