2012-01-05 2 views
3

Я делаю приложение, которое покажет маршрут движения от точки A до точки B.
Я использую набор карт IOS.
Сначала я получить информацию о маршруте от Google, как:
Google api-направления - маршрут розыгрыша не действителен

http://maps.googleapis.com/maps/api/directions/xml?origin=44.00771,20.911982&waypoints=44.814785,20.419936&sensor=false 

И это возвращает меня XML я анализирую долготы и широты из «шагов» из возвращенного XML и использовать его маршрут рисовать на карте.
Проблема в том, что этот маршрут розыгрыша, но не полный.
Я думаю, что в возвращенном XML не хватает информации для рисования полного маршрута, и мне интересно, как это возможно.
Я печатаю эти два местоположения на карте google в Интернете, и он отлично рисует маршрут. SO должно быть, что этот XML не содержит в себе достаточной информации или я делаю что-то неправильно здесь, я вызываю правильный веб-сервис?

Когда я прохожу точку из сильфона Crach приложения на этой линии:

do { 
      b = [encoded characterAtIndex:index++] - 63; 

с ошибкой:

**Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSCFString characterAtIndex:]: Range or index out of bounds'** 


[email protected]@{BTkBL}[email protected][email protected]@[email protected][email protected][oAI[[email protected]@[email protected]@[email protected][email protected]@][email protected]@[email protected][[email protected]@{@aCiBqCkBiAeA_BkBkBiByDeD][email protected]@sA}[email protected]@cAgAiAqAcBcBsLqJmI{[email protected]@[email protected]@[email protected]}@[email protected]@[email protected][email protected][email protected]{BmCaKcLoQqVEIe][email protected]{Pk[[email protected][email protected]@sH_I}IiIGEaFoE][email protected]}BsE{D}[email protected]@oB{ByCmDmHaI_DmCcBgAYOsBaA{@[email protected]{D{A}HgEaEkCeDeCeC}[email protected]@[email protected]@[email protected]@[email protected]@[email protected]}A][email protected]@}GMuCJoB\kC`[email protected]`@iBjAaFpEoCrC{AzAgB|[email protected][email protected]{@oAIIiAmAYYcA}@[email protected]@[email protected][email protected]@[email protected]{D}AuDkBcDkBaD}[email protected]@[email protected]{A[[email protected]][email protected]@[email protected]@[email protected]][email protected]@[email protected][email protected]@[email protected]^yBfC}[email protected]`A{IRuBN}GE}DMoCQmC[oCoBuK`AdFiBkIkAoDU_A]sB[[email protected]@[email protected]@[email protected]}[email protected]@[email protected]@[email protected]_C^[email protected]@[email protected]`BwDjBsD|[email protected]}[email protected][email protected]@[email protected][email protected]}@kCkEqIwC{[email protected]@[email protected]_G 

Но это работает:

}[email protected]@[email protected]@[email protected]@[email protected]][email protected]@[email protected]\G`@[email protected]@[email protected]@[[email protected]@fAeDnB}DvBqD`B}[email protected]}BbA}[email protected]|[email protected]@[email protected]@[email protected]@[email protected]@[email protected]{[email protected]_FeAyC}@{@Yy\[email protected][email protected]@mJkA}[email protected]@yGfA{I|BaJ|CcT|[email protected]~AcEbA_E|@}[email protected][email protected]@[email protected]@[email protected]}@[email protected]_CqFyDQKiH{E_FgDkHwEoG_EgDaBqCqAeG{[email protected][email protected]?Q?aBB[@[email protected]@cDJyC\[email protected]}[email protected]@[email protected]@[[email protected]{KfFMFmFzB}@[email protected]{[email protected]@sSzAA?][email protected]`@[email protected]@[email protected]@[email protected]@[email protected]?wElAeG~AmEtAuC|@[email protected]?[[email protected][[email protected]@[email protected]^sHjB_N|CwQjDcBZeC^{[email protected][email protected]@oE^[email protected][email protected]\[email protected]`[email protected]@{[email protected][email protected][email protected]@UPiRxN}GfFkD`[email protected][email protected][email protected]@{@[email protected]{EvAoA^[email protected]\[email protected]\[email protected]@[email protected]@FiG\[email protected]@[email protected]@gCE{FMmFU}[email protected]@[email protected]@[email protected]?oCHwD^[email protected]@cFfBgExB}DdCgDlC_GbF{AlA}CpB{@[email protected]\[email protected]@kCL_CP}[email protected]@[email protected][email protected]}A|@wCjBqA|@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]}@[email protected]@[email protected]@[email protected]@[email protected]@@[email protected][email protected]@[email protected]][email protected]@[email protected]@OoA][email protected]@QaDeA}[email protected]{[email protected]@[email protected]\[email protected]@[email protected]@cH`[email protected]@[email protected]@[email protected][email protected]~BeFhC}BfA}[email protected]@[email protected]@[email protected]`[email protected]}@[email protected]@[email protected]@[email protected]@[email protected]@yCGoCIiBMs^[email protected]@[email protected]@XuHxFyGzG_HbJ{H`K}ChEGH}B`[email protected]@[email protected]@yA^[email protected][email protected]@[email protected]@[email protected]@HwAX{A`@[email protected]@[email protected]~AgBpAmC~B{[email protected]^[email protected]@[email protected]@yNfCmFnAqE`[email protected]@uCtCcEdD_E`C}C|[email protected]}[email protected][email protected]`D_A`[email protected][[email protected]@[email protected][email protected][email protected][[email protected]`CkArB}@xAaB|BoA~A{[email protected]@yB\[email protected]`@qE`@[email protected]@{[email protected][email protected]}[email protected]\[email protected]@[email protected]\[email protected]@[email protected]@[email protected]{BlBuBtBaBrBUVkBtCaB|[email protected]@vA{@|[email protected]|[email protected]@[email protected]@[email protected]`[email protected][email protected]vBB`[email protected]@PdE\[email protected][email protected]@tB|PxArKvApLxBlMpAbH|EzTlF|[email protected]|FbV`[email protected]@[email protected]`K?XeCjViEnS{AlHmAb[[email protected][email protected]@fDuBnPqCxLiEbRuA|[email protected]~M}[email protected]|JoCxJuKtUyEfHgBhE{[email protected]`[email protected]`[email protected]`[email protected]|[email protected]][email protected]?JHfCLnE\rOF|@[email protected]@[email protected]@vDxDb^dBj\[email protected]@jGjA`[email protected]@hH\[email protected]@[email protected]`][email protected]`[email protected]@[email protected][email protected]`A`[email protected]@jIVfEPlHIfJ][email protected]|E[[email protected]@`[email protected]@[email protected]@@[email protected][tD]jDO|AW`[email protected]@|[email protected]`H}BdGcDjGEFiChEqKfLkCpCeBfBcQvJsDlBcFlByE~AkS~G_U|[email protected]{HWoHYq]uAeFH{[email protected]}[email protected][email protected]@mEhCoBjAwBrAuDlBeD|@[email protected][email protected][email protected]@}[email protected]@iDdAkDvAyDlBwBlAmDpCuAhA_KbK}BnBoB`B{[email protected][email protected][email protected]}[email protected]@q\|C}F`A_ErAgFhCqAjA}@[email protected]@[email protected]`AkArAqB|BcCbEeDfHaFtL}CxHuBxDyEvI_AbAeCfCSPQRKJiDfDqAjAaBdBaJtHwHlGoDjCkBpAuFbEuCdC_C|[email protected][email protected]@[email protected]@`[email protected]`[email protected][email protected]@[email protected]@[email protected]@KhBKpEA|DA|[email protected]@[email protected]@_A`[email protected]|[email protected]@[email protected]@[email protected]@aE`AuDpAiCfAwBbA}[email protected]@[email protected]@[email protected]~B_AtAoA|[email protected]@[email protected][[email protected]_DrFwD~F_GrH}ElFWXSTcCpCmAvAsCrDoDdF{FpJ{E~IyBrEcBrDyD`[email protected][email protected]`[email protected][email protected]_AnBiBjCyAtBILqAvCaD|HcDzH}BrF_CxFuBhEgAhB][email protected]@ZmCzAcC`A{[email protected]@[email protected]@[email protected][email protected]@[email protected]]UM][email protected]][email protected]@{[email protected][email protected]@GI{@[email protected]@[email protected]][email protected]@}@[email protected]@[email protected]@[email protected]@L}@[email protected][[email protected]\[email protected]@[email protected]`@[email protected]@[email protected]@[email protected]@[email protected]@Z{@[email protected]@[email protected]@[email protected][email protected]@[email protected]@[email protected]@[email protected]}@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected][email protected]@[email protected]@[email protected]@[email protected]@[email protected]|@[email protected]@gA\[email protected]@qAZuA\gA`@[email protected]@[email protected][email protected]@[email protected]@[email protected][`@[email protected]@[email protected]@[email protected]|EeB|[email protected]@|@mAnBkAfB}@fA]^[email protected]@}AnAmA|@mCfB_CxAiDrBaD`CwBnBQNqBxBGFWXWX{C|[email protected][email protected]@bAiBzCwBtDiCfFS`@[email protected]_CdF}@[email protected]}@[email protected]][email protected]|[email protected]`D{@[email protected][email protected]@[email protected]@zDKjACXCLUbC][email protected]`[email protected]@nIWlF]pI[rGMjDSrEUrDUnCoA`[email protected]`D]zAaApDuBfH{@[email protected]@[email protected]][email protected][email protected]~BcBtF_AxCiAzD{@[email protected]{BzFaEtIyCnFyFvISZKPU^[email protected]^[email protected][[email protected][email protected]@[email protected]@hF][email protected]@[email protected]@[email protected]@[email protected][email protected]@[email protected]@[email protected]@[email protected]@[email protected]{ArDM\][email protected]@gAnC][email protected]@xAoAbDMZ[[email protected]}[email protected]@]`[email protected]`[email protected]@|BKXITEJ[`[email protected]@xBKZ 

ответ

1

вы можете увидеть этот пример , чтобы решить вашу проблему. https://github.com/kishikawakatsumi/MapKit-Route-Directions

+0

Пожалуйста, избегайте публиковать дублирующие ответы. Кроме того, если ваша ссылка ломается, так же и этот ответ. Пожалуйста, убедитесь, что ваши ответы стоят сами по себе (суммируйте решение в своем ответе). –

0

Я ответил на подобный вопрос ранее, пожалуйста, смотрите этот link а также то, что вы ищете в комментариях этого ответа ...

+0

Я не знал, что эти пункты также являются местами. В любом случае я добавил этот метод и передал в каждом ..., который я получаю. Но проблема в том, что я сейчас обновляю конец моего вопроса ... – 1110

+0

Я видел ваше обновление, и даже я не мог понять, почему он потерпел неудачу в некоторых местах, где он работал нормально для некоторых. В конце я загрузил webview с картами google с указанием направления api на нем, поскольку это было очень неустойчиво. –

0

я нашел другой способ получить координаты маршрута Я называю эту услугу:

http://maps.google.com/maps?f=d&hl=en&saddr=44.00771,20.911982&daddr=44.814785,20.419936&ie=UTF8&0&om=0&output=kml 

возвращает файл со всеми значениями

7

это исключение происходит becoz массива выходит из связанно .... в методе декодирования просто использовать простую строку параметров .... их нет необходимости методы «replaceoccuranceof строки метод ".... просто используйте простую строку с у этот метод ........

[закодированное replaceOccurrencesOfString: @ "\\" withString: @ "\" опции: NSLiteralSearch диапазона: NSMakeRange (0, [закодированная длина])];

удалить вышеуказанную строку из вашего кода .... нет nsrangeexception происходят ......

+1

Большое спасибо, Медовый Сингх .. Убей мой день !!! – Vivek2012

+0

остановить крушение, но это не приведет к правильному пути –

Смежные вопросы