Mapbox Directions API response.body() всегда возвращает значение null. Я проверил свой токен доступа и использую тот же токен доступа, который использовал в своем старом проекте Mapbox 9 (который все еще работает и правильно отображает линию маршрута), но мой вызов API Directions, похоже, не работает в Mapbox 11.< /p>
Я предполагаю, что неправильно использую обновленный API, поскольку многое изменилось в доступных методах API Directions, используемых в Mapbox 11. Например, так выглядела линия маршрута. запрошено в Mapbox 9: https://docs.mapbox.com/android/java/guides/directions/
Но методы .origin и .destination были заменены на .routeOptions в Mapbox 11, где мне нужно создать объект RouteOptions и передать источник и пункт назначения методу .coordinatesList.
Вышеуказанные изменения — это лишь некоторые из изменений, которые я внес в свой старый код, поскольку я также перенес его на использование Kotlin, поскольку он в основном используется в Mapbox 11.
Я получил свой код из примера ЛОКАТОРА МАГАЗИНА Mapbox, который находится на Java и Mapbox 9, и просто изменил его для использования Kotlin и Mapbox 11, а также использовал последнюю стандартную 3D-карту, но, как уже упоминалось, мне не удалось заставить эти части работать как запрос Mapbox Directions API всегда возвращает значение null:
private fun getInformationFromDirectionsApi(
destinationPoint: Point,
fromMarkerClick: Boolean, @Nullable listIndex: Int?
) {
val destinationMarker = Point.fromLngLat(destinationPoint.longitude(), destinationPoint.latitude())
// Initialize the directionsApiClient object for eventually drawing a navigation route on the map
// TODO: Replace mockOriginLocation with getDeviceLocation
val mockOriginLocation = Point.fromLngLat(120.59270718466132, 16.418361457286892)
// USED THE NEW ROUTEOPTIONS OBJECT
val routeOptions: RouteOptions =
RouteOptions.builder().applyDefaultNavigationOptions()
.profile(DirectionsCriteria.PROFILE_WALKING)
.coordinatesList(listOf(mockOriginLocation, destinationMarker)).build()
// REQUEST THE ROUTE
val directionsApiClient: MapboxDirections =
MapboxDirections.builder().routeOptions(routeOptions).accessToken(R.string.mapbox_access_token.toString())
.build()
directionsApiClient.enqueueCall(object : Callback {
override fun onResponse(call: Call, response: Response) {
// Check that the response isn't null and that the response has a route
// THIS IS ALWAYS TRUE AS RESPONSE BODY IS ALWAYS NULL
if (response.body() == null) {
// THIS ALWAYS GETS LOGGED
Log.e("MapFragment", "No routes found, make sure you set the right user and access token.")
} else if (response.body()!!.routes().size < 1) {
Log.e("MapFragment", "No routes found")
} else {
...
}
}
...
})
}
Подробнее здесь: https://stackoverflow.com/questions/784 ... er-migrati
Тело ответа API Mapbox Directions всегда возвращает значение NULL в Android после перехода с Mapbox SDK 9 на 11. ⇐ Android
Форум для тех, кто программирует под Android
1715610558
Anonymous
Mapbox Directions API response.body() всегда возвращает значение null. Я проверил свой токен доступа и использую тот же токен доступа, который использовал в своем старом проекте Mapbox 9 (который все еще работает и правильно отображает линию маршрута), но мой вызов API Directions, похоже, не работает в Mapbox 11.< /p>
Я предполагаю, что неправильно использую обновленный API, поскольку многое изменилось в доступных методах API Directions, используемых в Mapbox 11. Например, так выглядела линия маршрута. запрошено в Mapbox 9: https://docs.mapbox.com/android/java/guides/directions/
Но методы .origin и .destination были заменены на .routeOptions в Mapbox 11, где мне нужно создать объект RouteOptions и передать источник и пункт назначения методу .coordinatesList.
Вышеуказанные изменения — это лишь некоторые из изменений, которые я внес в свой старый код, поскольку я также перенес его на использование Kotlin, поскольку он в основном используется в Mapbox 11.
Я получил свой код из примера ЛОКАТОРА МАГАЗИНА Mapbox, который находится на Java и Mapbox 9, и просто изменил его для использования Kotlin и Mapbox 11, а также использовал последнюю стандартную 3D-карту, но, как уже упоминалось, мне не удалось заставить эти части работать как запрос Mapbox Directions API всегда возвращает значение null:
private fun getInformationFromDirectionsApi(
destinationPoint: Point,
fromMarkerClick: Boolean, @Nullable listIndex: Int?
) {
val destinationMarker = Point.fromLngLat(destinationPoint.longitude(), destinationPoint.latitude())
// Initialize the directionsApiClient object for eventually drawing a navigation route on the map
// TODO: Replace mockOriginLocation with getDeviceLocation
val mockOriginLocation = Point.fromLngLat(120.59270718466132, 16.418361457286892)
// USED THE NEW ROUTEOPTIONS OBJECT
val routeOptions: RouteOptions =
RouteOptions.builder().applyDefaultNavigationOptions()
.profile(DirectionsCriteria.PROFILE_WALKING)
.coordinatesList(listOf(mockOriginLocation, destinationMarker)).build()
// REQUEST THE ROUTE
val directionsApiClient: MapboxDirections =
MapboxDirections.builder().routeOptions(routeOptions).accessToken(R.string.mapbox_access_token.toString())
.build()
directionsApiClient.enqueueCall(object : Callback {
override fun onResponse(call: Call, response: Response) {
// Check that the response isn't null and that the response has a route
// THIS IS ALWAYS TRUE AS RESPONSE BODY IS ALWAYS NULL
if (response.body() == null) {
// THIS ALWAYS GETS LOGGED
Log.e("MapFragment", "No routes found, make sure you set the right user and access token.")
} else if (response.body()!!.routes().size < 1) {
Log.e("MapFragment", "No routes found")
} else {
...
}
}
...
})
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78472973/mapbox-directions-api-response-body-always-returns-null-in-android-after-migrati[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия