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 Mapy jest dostępne w formie open source i znajdziesz je na 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 do pliku 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 korzystać z kilku funkcji języka Kotlin, takich jak funkcje rozszerzeń, parametry nazwane i domyślne, deklaracje destrukturyzujące i koroboje.
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") }
Zbieranie zdarzeń dotyczących kamer
Zdarzenia, takie jak ruchy kamery, można rejestrować 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 korzystać z biblioteki Maps KTX w własnej aplikacji.
Aby wypróbować aplikację demonstracyjną:
- Na GitHub sklonuj lub pobierz plik ZIP.
- W Android Studio wybierz Plik -> Otwórz, przejdź do katalogu i otwórz folder, który został właśnie sklonowany lub pobrany.
- 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, nie należy umieszczać tego pliku w systemie kontroli wersji. - Dodaj ten pojedynczy wiersz do pliku
secrets.properties
:MAPS_API_KEY="YOUR_API_KEY"
gdzieYOUR_API_KEY
to rzeczywisty klucz interfejsu API uzyskany w pierwszym kroku. Przykładem może być żądaniesecrets.defaults.properties
. - W sekcji Konfiguracja uruchomienia wybierz moduł app-ktx.
- Kliknij Uruchom „app-ktx”.
Co dalej?
Możesz też zainteresować się innymi bibliotekami rozszerzeń Kotlina do platformy Mapy Google: