Se trata de una colección de extensiones de Kotlin (KTX) que se utilizan con el SDK de Maps para Android y la biblioteca de utilidades de este SDK. Estas extensiones proporcionan funciones de lenguaje Kotlin que te permiten escribir Kotlin idiomático y conciso cuando desarrollas utilizando el SDK de Maps para Android. Maps KTX es de código abierto y está disponible en GitHub junto con ejemplos.
Instalación
Para instalar la biblioteca KTX del SDK de Maps para Android y, de forma opcional, la biblioteca de utilidades de este mismo SDK, agrega las siguientes dependencias a tu archivo build.gradle
.
dependencies {
// KTX for the Maps SDK for Android
implementation 'com.google.maps.android:maps-ktx:3.2.1'
// (Optional) KTX for the Maps SDK for Android Utility Library
implementation 'com.google.maps.android:maps-utils-ktx:3.2.1'
}
Ejemplos de uso
Con la biblioteca de KTX, puedes aprovechar varias funciones del lenguaje Kotlin, como funciones de extensión, parámetros con nombre y argumentos predeterminados, declaraciones de desestructuración y corrutinas.
Cómo obtener un elemento GoogleMap mediante corrutinas
Se puede obtener el acceso a un elemento GoogleMap
mediante corrutinas.
lifecycleScope.launchWhenCreated { val mapFragment: SupportMapFragment? = supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment val googleMap: GoogleMap? = mapFragment?.awaitMap() }
Cómo agregar un marcador
Se puede agregar un marcador mediante el método addMarker()
de estilo DSL.
val sydney = LatLng(-33.852, 151.211) val marker = googleMap.addMarker { position(sydney) title("Marker in Sydney") }
Cómo recopilar eventos de la cámara
Los eventos, como los movimientos de la cámara, se pueden recopilar mediante el flujo de Kotlin.
lifecycleScope.launchWhenCreated { googleMap.cameraMoveEvents().collect { print("Received camera move event") } }
Puedes ver una lista completa de las funciones compatibles en la documentación de referencia.