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 library implementation 'com.google.maps.android:maps-ktx:5.0.0' }
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 recuperar un elemento GoogleMap mediante corrutinas
Se puede obtener el acceso a un elemento GoogleMap
mediante corrutinas.
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { val mapFragment: SupportMapFragment? = supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment val googleMap: GoogleMap? = mapFragment?.awaitMap() } }
Cómo agregar un marcador
Puedes agregar un marcador con 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.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { googleMap.cameraMoveEvents().collect { print("Received camera move event") } } }
Puedes ver una lista completa de las funciones compatibles en la documentación de referencia.
Prueba la app de muestra
El repositorio de GitHub para esta biblioteca también contiene una app de demo que muestra cómo puedes utilizar la biblioteca Maps KTX en tu propia app.
Para probar la app de demo, sigue estos pasos:
- En GitHub, clona o descarga el archivo ZIP.
- En Android Studio, elige File -> Open, navega al directorio y abre la carpeta que acabas de clonar o descargar.
- Agrega una clave de API a la app de demo.
- Obtén una clave del SDK de Maps para Android.
- En el directorio raíz, crea un archivo llamado
secrets.properties
. Este archivo NO debe estar bajo control de versión para proteger tu clave de API. - Agrega esta única línea a
secrets.properties
MAPS_API_KEY="YOUR_API_KEY"
, dondeYOUR_API_KEY
es la clave de API real que obtuviste en el primer paso. Puedes consultarsecrets.defaults.properties
como ejemplo. - En la configuración de ejecución, selecciona el módulo app-ktx.
- Selecciona Run 'app-ktx'.
Próximos pasos
Es posible que también te interesen otras bibliotecas de extensiones de Kotlin para Google Maps Platform: