2012-06-14 2 views
3

Я новичок в android и разрабатываю приложение для навигации для android.My вопрос в том, что я хочу показать маршрут с несколькими точками пути между исходным и целевым узлом на картах Google, и я не знаю, как это сделать. У меня есть поиск, но большая часть результатов для двух точек.Отображение маршрута между двумя точками с несколькими путевыми точками

Пожалуйста, помогите мне решить мою проблему

например: - когда пользователь приложения представляет назначения с некоторыми точками пути карта должна отображать маршрут от источника к месту назначению с тем точками пути по телефону.

Спасибо!

ответ

0

Не думаю, что намерения Maps предлагают эти возможности, но у вас есть некоторые другие варианты.

Лучше, чем больше работы 1) Создайте свою собственную активность на карте, которая отображает маршруты для многоуровневой работы (с использованием карты и наложений). Here is an example о том, как преобразовать файл KML в маршрут

быстрее и проще 2) Создание простой WebView (или вы можете просто Намерение новый один с заданным URL) и динамически строить URL для запроса API Карт Google с путевыми точками. См. Google's website для получения документации о получении карты с маршрутами через путевые точки.

+0

Thankz MikeIsrael .... Наконец, я нарисовал маршрут. Я использовал API направления, в ответе они дают значения точек под тегом overview_polyline, я его декодирую и рисую маршрут. Таким образом, я нарисовал маршрут от источника к месту назначения с несколькими путевыми точками. –

+0

@ user1457039 рад слышать, также я думаю, что я заметил, что вам может понадобиться добавить строку от точки src к первой точке маршрута и от последней точки маршрута к вашему dest в некоторых случаях. Это скорее стиль, чем функциональность, но рад, что вы его работали. – MikeIsrael

+0

@ user1457039 привет, если у вас есть решение pls предоставить мне, я тоже застрял на той же проблеме – siva

0

«У меня есть поиск, но большая часть результатов для двух точек». Вы уже нашли все необходимое для этого.

Для этого, вы не «рисовать через точки по пути,» вы на самом деле придется нарисовать маршрут между 2 точками для каждой точки у вас есть:

IE. Вы хотите добраться от точки A до точки D, а по пути - точки B и C. Решение состоит в том, чтобы провести маршрут от A до B, B до C и, наконец, от C до D.

+0

: - Может у, пожалуйста, покажи мне, как это сделать .... Я имею в виду код .. –

+0

Взгляните на источник этого; он содержит то, что вы ищете: http://stackoverflow.com/a/2339975/1426565 – Guardanis

+0

Спасибо за усилия Cruceo..Но это показывает прямую линию от одной точки до другой ... Что я пытаюсь do показывает маршрут (дорогу) между двумя точками ... Вот как я показываю маршрут между двумя точками. Uri uri = Uri.parse ("http://maps.google.com/maps?&saddr=latitude,longtitude&daddr=latitude,longtitude"); Intent ShowMapWithDirect = новый Intent (Intent.ACTION_VIEW, uri); startActivity (ShowMapWithDirect); Используя это, я могу показать только две точки. Я не могу дать никаких путевых точек, чтобы показать на карте .. –

0

Вы можете использовать карту намерения, как это:

String address = "http://maps.google.com/maps?daddr=" + "Latitude" + "," + "Longitude" + "+to:" +"Latitude" + "," + "Longitude"; 
    Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(address));               
    startActivity(intent); 

в этом случае точка старта будет ваше текущее местоположение, и вы можете добавить множество промежуточных точек, как вы хотите использовать «+ к:»