Mapy na Androida KTX

Rozszerzenia Kotlina na Androida (KTX) to zbiór rozszerzeń Kotlina do pakietu Maps SDK na Androida i biblioteki narzędziowej Maps SDK na Androida. Te rozszerzenia zapewniają funkcje języka Kotlin, które umożliwiają zwięzłe i idiomatyczne pisanie w tym języku podczas tworzenia aplikacji z użyciem pakietu Maps SDK na Androida. KTX Maps jest dostępny w wersji open source i znajdziesz go na GitHubie wraz z przykładami.

Instalacja

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

dependencies {

    // KTX for the Maps SDK for Android library
    implementation("com.google.maps.android:maps-ktx:5.1.1")
}

Przykłady użycia

Dzięki bibliotece KTX możesz posługiwać się kilkoma językami Kotlina, takie jak funkcje rozszerzeń, parametry nazwane i argumenty domyślne, destrukcyjne deklaracje i współrzędne.

Pobieranie mapy Google za pomocą coroutine

Dostęp do GoogleMap można uzyskać za pomocą coroutines.

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

Dodawanie znacznika

Dodawanie znacznika można wykonać za pomocą metody w stylu DSL addMarker().

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

Rejestrowanie zdarzeń kamery

Zdarzenia, takie jak ruchy 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 dla tej biblioteki zawiera też aplikację demonstracyjną który pokazuje, jak korzystać z biblioteki Map KTX we własnej aplikacji.

Aby wypróbować aplikację demonstracyjną:

  1. Na GitHub sklonuj lub pobierz plik ZIP.
  2. W Android Studio wybierz kolejno Plik -> Otwórz, przejdź do katalogu i otwórz folder, który został przed chwilą sklonowany lub pobrany.
  3. Dodaj klucz interfejsu API do aplikacji demonstracyjnej.
    1. Pobierz klucz Maps SDK na Androida.
    2. W katalogu głównym utwórz plik o nazwie secrets.properties. Aby chronić klucz interfejsu API, ten plik NIE powinien podlegać kontroli wersji.
    3. Dodaj ten pojedynczy wiersz do pliku secrets.properties
      :
      MAPS_API_KEY="YOUR_API_KEY"
      Gdzie YOUR_API_KEY to rzeczywisty klucz interfejsu API uzyskany w pierwszym kroku. Zerknij na secrets.defaults.properties .
  4. W konfiguracji uruchamiania wybierz moduł app-ktx.
  5. Kliknij Uruchom „app-ktx”.

Co dalej?

Możesz też zainteresować się innymi bibliotekami rozszerzeń Kotlina na platformę Mapy Google:

  • KTX w przypadku pakietu SDK Map na potrzeby biblioteki narzędziowej na Androida.
  • KTX w przypadku pakietu SDK Miejsc na Androida