Mapy na Androida KTX

Rozszerzenia Kotlin (KTX) dla pakietu Maps SDK na Androida to zbiór rozszerzeń Kotlin dla 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 Kotlin podczas tworzenia aplikacji na podstawie pakietu Maps SDK na Androida. Maps KTX jest dostępny na licencji open source i znajduje się w GitHub wraz z przykładami.

Instalacja

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

dependencies {

    // Maps SDK for Android Utils library (includes KTX extensions)
    implementation(libs.android.maps.utils)
}

Przykłady użycia

Dzięki bibliotece KTX możesz korzystać z kilku funkcji języka Kotlin, takich jak funkcje rozszerzające, parametry nazwane i argumenty domyślne, deklaracje destrukcyjne i współprogramy.

Pobieranie GoogleMap za pomocą współprogramów

Dostęp do GoogleMap można uzyskać za pomocą współprogramów.

scope.launch {
    if (context is FragmentActivity) {
        val mapFragment =
            context.supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment
        val googleMap = mapFragment?.awaitMap()
    }
}

Dodawanie znacznika

Znacznik można dodać za pomocą metody addMarker() w stylu DSL.

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.

scope.launch {
    googleMap.cameraMoveEvents().collect {
        Log.d("KTX", "Received camera move event")
    }
}

Pełną listę obsługiwanych funkcji znajdziesz w dokumentacji.

Wypróbuj przykładową aplikację

W repozytorium GitHub tej biblioteki znajduje się też aplikacja demonstracyjna która pokazuje, jak używać biblioteki Maps KTX we własnej aplikacji.

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

  1. Sklonuj repozytorium z GitHub lub pobierz plik ZIP.
  2. W Android Studio kliknij Plik – > Otwórz i przejdź do katalogu, a następnie otwórz folder, który został sklonowany lub pobrany.
  3. Dodaj klucz interfejsu API do aplikacji demonstracyjnej.
    1. Pobierz klucz pakietu 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 być objęty kontrolą wersji.
    3. Dodaj ten wiersz do secrets.properties
      MAPS_API_KEY="YOUR_API_KEY"
      gdzie YOUR_API_KEY to rzeczywisty klucz interfejsu API uzyskany w pierwszym kroku. Możesz zobaczyć secrets.defaults.properties jako przykład.
  4. W konfiguracji uruchomienia wybierz moduł app-ktx.
  5. Kliknij Uruchom „app-ktx”.

Co dalej?

Mogą Cię też zainteresować inne biblioteki rozszerzeń Kotlin dla Platformy Map Google:

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