Почему первое значение в шаговом массиве json, возвращаемое API-указаниями Google, не соответствует другим элементам в списке шагов?
Ниже приведен ответ Json от Google-directions-api.
Если мы посмотрим на расстояние, то значение объекта кажется в метрах, а текст округляется до значения в километрах. Но первый объект не следует за этим.
Похожий случай с продолжительностью. Значение указывается в секундах, а текст округляется в минутах. Но первый объект в массиве steps не соответствует результату.
Мне нужны согласованные данные для моего приложения. Что не так с этим? Есть ли решение?
Примечание. Не все ответы противоречивы, но для некоторых ответов есть несоответствия.
Любой вид предложения будет принята с благодарностью.
Спасибо!
"steps" : [
{
"distance" : {
"text" : "20 m",
"value" : 20
},
"duration" : {
"text" : "1 min",
"value" : 6
},
"end_location" : {
"lat" : 25.5940352,
"lng" : 85.1373598
},
"html_instructions" : "Head \u003cb\u003ewest\u003c/b\u003e",
"polyline" : {
"points" : "uye{CwlsfOAf@"
},
"start_location" : {
"lat" : 25.5940333,
"lng" : 85.1375638
},
"travel_mode" : "DRIVING"
},
{
"distance" : {
"text" : "0.1 km",
"value" : 124
},
"duration" : {
"text" : "1 min",
"value" : 65
},
"end_location" : {
"lat" : 25.5944879,
"lng" : 85.1365761
},
"html_instructions" : "Turn \u003cb\u003eright\u003c/b\u003e toward \u003cb\u003eBangali Tola Bus Stand Rd\u003c/b\u003e/\u003cb\u003eMithapur Bus Stand Rd\u003c/b\u003e/\u003cb\u003ePatna - Aurangabad Rd\u003c/b\u003e",
"maneuver" : "turn-right",
"polyline" : {
"points" : "wye{CoksfOI?i@AM?GAA@A??@A@Ah@?DGhB"
},
"start_location" : {
"lat" : 25.5940352,
"lng" : 85.1373598
},
"travel_mode" : "DRIVING"
},
{
"distance" : {
"text" : "1.1 km",
"value" : 1096
},
"duration" : {
"text" : "5 mins",
"value" : 325
},
"end_location" : {
"lat" : 25.5849493,
"lng" : 85.1338281
},
"html_instructions" : "Turn \u003cb\u003eleft\u003c/b\u003e onto \u003cb\u003eBangali Tola Bus Stand Rd\u003c/b\u003e/\u003cb\u003eMithapur Bus Stand Rd\u003c/b\u003e/\u003cb\u003ePatna - Aurangabad Rd\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003eContinue to follow Mithapur Bus Stand Rd/Patna - Aurangabad Rd\u003c/div\u003e",
"maneuver" : "turn-left",
"polyline" : {
"points" : "q|e{CsfsfObBXxB`@tATD@p@Lv@LbEr@XDx@NhB\\~Dv@~@Np@LbDv@rDz@ZFjGpAbBXv@N"
},
"start_location" : {
"lat" : 25.5944879,
"lng" : 85.1365761
},
"travel_mode" : "DRIVING"
},]
1 ответ
Если вы посмотрите внимательно, нет никаких противоречий.
Первый объект:
distance:
Значение в метрах. значение = 20 метров и, следовательно, текст 20 m
duration:
Значение в секундах. значение = 6 секунд = 0,1 минуты. Округление до ненулевого целого значения дает 1 минуту, и, следовательно, текст 1 min
Другие объекты следуют той же схеме.
Ура!