Maps Android KTX

Maps Android KTX – это набор расширений Kotlin для Maps SDK для Android и библиотеки утилит Maps SDK для Android. С его помощью вы сможете создавать лаконичный и идиоматичный код Kotlin при работе с Maps SDK для Android. Maps KTX – это ПО с открытым кодом. Вы можете скачать его вместе с примерами на сайте GitHub.

Установка

Чтобы установить KTX для Maps SDK для Android или библиотеки утилит Maps SDK для, добавьте в файл 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'
}

Примеры использования

С помощью библиотеки KTX вы сможете использовать разные функции Kotlin, например расширения, именованные параметры и стандартные аргументы, деструктуризацию и сопрограммы.

Получение кода GoogleMap с помощью сопрограмм

Доступ к коду GoogleMap можно получить с помощью сопрограмм.

lifecycleScope.launchWhenCreated {
  val mapFragment: SupportMapFragment? =
    supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment
  val googleMap: GoogleMap? = mapFragment?.awaitMap()
}

Добавление маркера

Маркер можно добавить, используя код DSL (addMarker()).

val sydney = LatLng(-33.852, 151.211)
val marker = googleMap.addMarker {
  position(sydney)
  title("Marker in Sydney")
}

Сбор данных о событиях камеры

Такие события, как перемещения камеры можно регистрировать в потоке Kotlin .

lifecycleScope.launchWhenCreated {
  googleMap.cameraMoveEvents().collect {
    print("Received camera move event")
  }
}

С полным списком функций можно ознакомиться в справочной документации.