RxJava – это реактивная библиотека для создания асинхронных и событийных программ с помощью наблюдаемых последовательностей.
Библиотека Places Rx позволяет получать наблюдаемые последовательности асинхронных событий в Maps SDK и Places SDK для Android и пользоваться широкими возможностями библиотеки RxJava.
Установка
Чтобы установить библиотеку Places Rx для проекта Google Карт, выполните следующие действия:
Добавьте в файл
build.gradleна уровне модуля следующие зависимости:dependencies { // RxJava bindings for the Maps SDK implementation(libs.maps.rx) // RxJava bindings for the Places SDK implementation(libs.places.rx) // It is recommended to also include the latest Maps SDK, Places SDK and RxJava so you // have the latest features and bug fixes. implementation("com.google.android.gms:play-services-maps:20.0.0") implementation("com.google.android.libraries.places:places:5.3.0") implementation("io.reactivex.rxjava3:rxjava:3.1.12")
Заново выполните сборку проекта в Android Studio, чтобы синхронизировать эти изменения.
Пример использования
Получите Single и подпишитесь на него при получении сведений о месте:
placesClient.fetchPlace( placeId = "thePlaceId", placeFields = listOf(Place.Field.ID, Place.Field.NAME, Place.Field.ADDRESS), actions = {} ).subscribe( { response -> Log.d("PlacesRx", "Successfully got place ${response.place.id}") }, { error -> Log.e("PlacesRx", "Could not get place: ${error.message}") } ) }
Дальнейшие действия
- Посетите страницу проекта Библиотека Places Rx на GitHub.
- Ознакомьтесь с документацией по API библиотеки Places Rx.