As extensões Kotlin (KTX) do Maps para Android são um conjunto de extensões Kotlin do SDK do Maps para Android e da biblioteca de utilitários desse SDK. Essas extensões oferecem recursos de linguagem Kotlin que permitem escrever códigos de maneira concisa e natural quando você desenvolve para o SDK em questão. O KTX do Maps é de código aberto e está disponível no GitHub (em inglês) com alguns exemplos.
Instalação
Se você quiser instalar o KTX no SDK do Maps para Android e na biblioteca de utilitários desse SDK, adicione as seguintes dependências ao arquivo build.gradle
:
dependencies { // KTX for the Maps SDK for Android library implementation 'com.google.maps.android:maps-ktx:5.0.0' }
Exemplos de uso
Com a biblioteca KTX, você pode usar vários recursos da linguagem Kotlin, como funções de extensão, argumentos padrão e parâmetros nomeados, declarações de desestruturação e corrotinas.
Acessar um GoogleMap usando corrotinas
É possível recuperar o acesso a um parâmetro GoogleMap
usando corrotinas.
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { val mapFragment: SupportMapFragment? = supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment val googleMap: GoogleMap? = mapFragment?.awaitMap() } }
Adicionar um marcador
Para adicionar um marcador, use o método addMarker()
no estilo DSL.
val sydney = LatLng(-33.852, 151.211) val marker = googleMap.addMarker { position(sydney) title("Marker in Sydney") }
Coletar eventos da câmera
Para coletar eventos, como movimentos de câmera, use o fluxo do Kotlin.
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { googleMap.cameraMoveEvents().collect { print("Received camera move event") } } }
Na documentação de referência há uma lista completa dos recursos compatíveis.
Testar o exemplo de aplicativo
No repositório do GitHub desta biblioteca há um aplicativo de demonstração ensinando como usar a biblioteca KTX do Maps no seu app.
Para testar a demonstração, siga estas etapas:
- Acesse o GitHub e copie ou faça download do arquivo ZIP.
- No Android Studio, escolha File -> Open, acesse o diretório e abra a pasta copiada ou baixada.
- Adicione uma chave de API ao app de demonstração.
- Gere uma chave do SDK do Maps para Android.
- No diretório raiz, crie um arquivo e dê o nome de
secrets.properties
. Para proteger sua chave de API, ele NÃO pode estar sujeito ao controle de versões. - Adicione esta linha a
secrets.properties
MAPS_API_KEY="YOUR_API_KEY"
YOUR_API_KEY
é a chave de API obtida na primeira etapa. Um exemplo é osecrets.defaults.properties
. - Na configuração de execução, selecione o módulo app-ktx.
- Selecione Run 'app-ktx'.
A seguir
Existem mais bibliotecas de extensão em Kotlin para a Plataforma Google Maps que talvez sejam do seu interesse: