Maps Android KTX – это набор расширений Kotlin для Maps SDK и библиотеки утилит Maps SDK, который позволяет создавать лаконичный и идиоматичный код. Maps KTX – это ПО с открытым кодом. Вы можете скачать его вместе с примерами на сайте GitHub.
Установка
Чтобы установить KTX для Maps SDK и библиотеки утилит Maps SDK, добавьте в файл build.gradle
следующие зависимости:
dependencies { // KTX for the Maps SDK for Android library implementation 'com.google.maps.android:maps-ktx:5.0.0' }
Примеры использования
С помощью библиотеки KTX вы сможете использовать разные функции Kotlin, например расширения, именованные параметры и стандартные аргументы, деструктуризацию и сопрограммы.
Получение кода GoogleMap с помощью сопрограмм
Доступ к коду GoogleMap
можно получить с помощью сопрограмм.
lifecycleScope.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { 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.launch { lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) { googleMap.cameraMoveEvents().collect { print("Received camera move event") } } }
С полным списком функций можно ознакомиться в справочной документации.
Образец приложения
В хранилище на GitHub для этой библиотеки также есть демонстрационное приложение. Вы можете посмотреть, как именно используется Maps KTX.
Чтобы поработать с демонстрационным приложением, выполните следующие действия:
- Клонируйте или скачайте ZIP-файл с GitHub.
- В Android Studio нажмите File (Файл) > Open (Открыть), перейдите в нужный каталог и откройте папку, которую клонировали или скачали.
- Добавьте в демонстрационное приложение ключ API.
- Получите ключ Maps SDK для Android.
- В корневом каталоге создайте файл с названием
secrets.properties
. Чтобы защитить ваш ключ API, этот файл НЕ ДОЛЖЕН храниться в системе контроля версий. - Добавьте в
secrets.properties
следующую строку:
MAPS_API_KEY="YOUR_API_KEY"
ВместоYOUR_API_KEY
укажите ключ API, который вы получили на первом шаге. Пример можно найти здесь:secrets.defaults.properties
. - В режиме конфигурации запуска выберите модуль app-ktx.
- Выберите Run 'app-ktx' (Запуск app-ktx).
Что дальше
Вас также могут заинтересовать другие библиотеки расширений Kotlin для платформы Google Maps: