Компактный способ рисования маршрутов в вашем приложении для Android
Я счастлив поделиться DrawRoute, библиотекой для рисования маршрутов с открытым исходным кодом, которая будет использоваться с Google Maps API for Android.
Технологический стек: Kotlin, OkHttp, RxJava и AndroidX.
Перед тем, как погрузиться в
Библиотека использует Google Directions API для получения информации о маршруте при рисовании на карте. Это не бесплатно и требует, чтобы у вас был проект с включенным этим API, а также учетная запись для выставления счетов.
Смотрите как начать.
Новая библиотека Котлина
Эта библиотека полностью написана на Kotlin и включает в себя шаблонный код, участвующий в использовании Google Directions API, с использованием реактивного программирования для большего контроля и точности. Он также предоставляет функцию расширения, которую можно использовать в самом объекте Google Maps, когда карта будет готова.
Шаги интеграции
В вашем build.gradle
файле (уровень проекта) добавьте следующее в блок allProjects
:
allprojects { repositories { maven { url 'https://jitpack.io' } } }
Затем на вашем build.gradle
(уровне приложения) добавьте следующее в блок зависимостей:
dependencies { implementation 'com.github.malikdawar:drawroute:1.1-rx' }
После того, как вы успешно интегрировали Google Maps API и выполнили шаги интеграции, описанные выше, вы можете вызвать метод drawRouteOnMap
, который будет рисовать маршрут на карте и возвращать его как Rx-Disposable, который следует использовать для удаления выполненных подписка.
В библиотеку, используемую здесь, также добавлен вспомогательный moveCameraOnMap
метод для фокусировки и увеличения исходного местоположения перед построением маршрута.
Что такое подписка?
Подписка - это синхронный сетевой вызов API Google Directions:
После выполнения вышеуказанных шагов по порядку окончательный результат с маршрутом, нарисованным на основе указанного выше источника и мест назначения, должен выглядеть следующим образом:
Зачем это нужно?
Работа напрямую с Google Directions API потребует добавления значительной бизнес-логики для обработки запроса и ответа. Следовательно, вы можете использовать эту библиотеку, которая будет использовать свой собственный предварительно созданный API поверх, чтобы поддерживать окончательную и читаемую структуру кода.
Заключение
Я счастлив поделиться DrawRoute с сообществом. Репо содержит краткое руководство с полной документацией. Следите за новостями! Также приветствуются любые соответствующие предложения по усовершенствованию, о которых можно сообщить на GitHub.