пятница, 11 мая 2012 г.

GPS-навигация под Android, обзор

Случилось мне стать обладателем LG Optimus Link P690 c ОС Android...

Я - турист, поэтому одной из важнейших функций смартфона для меня является GPS-навигация. Да и в пределах большого города гораздо приятнее сразу точно знать, где ты, и куда тебе надо, чем спрашивать у прохожих. А для полноценного использования GPS нужна хорошая навигационная программа. Я перепробовал порядка 20 программ, выбирая удобную для себя. В этом посте я постараюсь описать наиболее привлекательные из них, чтобы упростить поиски другим.



Во-первых, нужно разобраться, какие функции и особенности бывают у навигационных программ:
  • Лицензия. Программы могут быть свободными, просто бесплатными, с единовременной платой и с платой за подписку на определенное время. Ещё бывают пиратские. Я - за свободный софт. На худой конец, за бесплатный. Поэтому дорогие навигаторы здесь описаны не будут. К сожалению, под эту категорию попадают почти все автомобильные навигаторы.
  • Определение местоположения на карте. Есть у всех;
  • Запись треков - записывает пройденный путь в файл одного из общепринятых форматов. Его можно просмотреть потом как на телефоне, так и на компьютере в специальном софте;
  • Мониторы. Экран, или панель, где подробно отображаются параметры движения, такие, как пройденный путь, средняя скорость, высота, точность определения координат, время заката и восхода в данной точке земного шара в данное время, и другие;
  • Ведение по маршруту. Маршрут может быть составлен вручную, либо построен автоматически, как дополнительная фича;
  • Автоматическая прокладка маршрута от выбранной (или текущей) точки к другой выбранной. Бывает off-line-овая, когда программа без использования сети находит путь, и бывает on-line-овая, когда программа обращается к специальным интернет-сервисам;
  • Голосовые подсказки ("Поверните направо!11");
  • Тип карт: векторные, или растровые. Растровые - это просто картинки для каждого квадрата местности для каждого масштаба. Занимают много. Векторные - свободно масштабируемые, легковесные. Иногда имеется возможность выбрать, какие объекты следует показывать на векторной карте;
  • Источник карт и их формат. Программа может использовать On-line-карты, например карты Google или Open Street Map, либо Off-line, сохраненные заранее в телефоне. В первом случае карты, подгружаемые по мере надобности из сети, кэшируются в телефоне, то есть для повторного просмотра одних и тех же участков интернет не нужен. Однако полагаться на кэш в серьезных поездках нельзя, поскольку достаточно проблематично вручную собрать его без дыр. Кстати, не все программы умеют кэшировать.
  • Поиск по карте. Где находится ближайший банкомат Сбербанка? Где Третья улица Строителей, дом 25?
  • Внешние датчики - поддержка bluetooth-датчиков пульса, вращения педалей, велокомпьютера и других. Для большинства сограждан нашей страны - не актуально.
  • On-line сервисы - например, пробки на дорогах, друзья поблизости, геокэшинг. Обычно являются неосновными функциями программы.
Замечу ещё одно важное свойство карт, выполненных специально для навигаторов: нефиксированная детализация. То есть там, где информации много, прорисован каждый сарай, а там, где информации мало, на карте может не быть многого. Смотришь на карту, и не знаешь: то-ли здесь заброшенная 50 лет назад деревня, то-ли крупное поселение с магазином и вышкой сотовой связи, только не прорисованное. А уж о дорогах, которых нет на карте, и говорить нечего. Такого недостатка лишены карты государственные, та же советская двухкилометровка. Масштаб не очень подробный, зато все объекты, сообразные этому масштабу, отмечены. По данным на момент составления, конечно :) Такие карты можно прикрутить к некоторым навигационным программам.

Итак, навигация под Android:

Яндекс-карты

http://mobile.yandex.ru/maps/android/

Очень известное приложение от Яндекса. Постоянно совершенствуется разработчиками. По состоянию на 9 апреля 2012 года:
  • Лицензия: бесплатно.
  • Запись треков: нет.
  • Мониторы: только скорость и оставшееся расстояние по маршруту
  • Прокладка маршрутов: on-line, запрашивает сервер Яндекса. Нарисовать маршрут вручную - нельзя.
  • Голосовые подсказки: нет.
  • Тип карт: растровые. На каждый масштаб - отдельно. Пока не загружен нудный масштаб, может генерировать из более крупных или мелких, но это малополезно.
  • Источники карт: сервера Яндекса. Есть три вида: схема, спутник, народная. Народная - как я понял, что-то вроде OpenStreetMap. Карты кэшируются. Готовый кэш для разних городов можно найти в интернете, в частности на rutracker.org. Также, для крупных городов можно скачать полностью прямо из программы схему, или народную карту (для одних, почему-то, доступна одна, для других - другая). Произвольную область скачать заранее нельзя.
  • Поиск по карте: есть, на то он и Яндекс, чтоб искать.
  • On-line сервисы: Яндекс-пробки, конечно! Информация собирается добровольно и анонимно от пользователей программы. Имеются "Сообщества", которые, видимо, показывают своих членов на карте. Я не разобрался.
Программа работает стабильно, имеет понятный, на мой взгляд, интерфейс. Для походов главный минус - нужно выкачивать (чаще всего - вручную) кэш. Спутниковая вдали от городов имеет низкое качество (хотя оно всё время растёт), "схема" - нефиксированную детализацию. Для города - подходит хорошо. Если интернет дешевый, или везде Wi-Fi :)

Locus Free/Pro

http://www.locusmap.eu/

Замечательная многофункциональная программа, туристический навигатор, да только проприетарная.
  • Лицензия: Free-версия бесплатна, имеет ограничения. Pro-версия стоила 155 рублей на Android-маркете на момент написания поста.
  • Запись треков: есть.
  • Мониторы: есть. Есть даже пользовательские экраны, которые можно произвольно настраивать в xml-файлах, или брать готовые. Идеальный интерфейс, в моём понимании, так устроен.
  • Прокладка маршрутов: не предусмотрена. Возможно ведение по записанному треку, или нарисованному вручную.
  • Голосовые подсказки: есть, но не сильно они нужны, когда маршруты не стройтся автоматически.
  • Тип карт: растровые и векторные. Векторные - .map, брать с Open Street Map. Растровые - можно скачать предварительно при помощи Mobile Atlas Creator.
  • Источники карт: множество on-line-источников.
  • On-line сервисы: погода есть в Pro-версии.
  • Плагины. Дополнительная реальность, геокэшинг, и немало других.
Использовал бы, если б не проприетарность. Ещё, кому-то она может показаться сложноватой для туристического навигатора.

OruxMaps

http://www.oruxmaps.com/

Динамично развивающаяся программа со множеством функций.
  • Лицензия: Open Source.
  • Запись треков: есть. Возможность смотреть графики скорости и высоты, также параметры движения по каждому пройденному километру. Удобно
  • Мониторы: есть.
  • Прокладка маршрутов: не предусмотрена. Возможно ведение по записанному треку, или нарисованному вручную.
  • Голосовые подсказки: нет.
  • Тип карт: растровые и векторные. Векторные - .map, брать с Open Street Map. Растровые - можно скачать предварительно при помощи Mobile Atlas Creator
  • Источники карт: тьма тьмущая. Наверное, все карты, что есть в открытом доступе. В том числе, конечно Гугл, Яндекс, Майкрософт, OSM.
  • Внешние датчики: есть! Можно приделать датчик пульса.
  • On-line сервисы: Пробок и погоды нет. Геокэшинг - нужно скачивать отдельно.
Мой выбор в походе. Можно любую карту загрузить и использовать, в том числе спутниковую. Идеально для пробежек и волопоездок.

Androzic

http://code.google.com/p/androzic/

Простая и лёгкая программа. Работает с картами OziExplorer.
  • Лицензия: Open Source.
  • Запись треков: есть.
  • Мониторы: есть, только основные.
  • Прокладка маршрутов: не предусмотрена. Возможно ведение по нарисованному вручную маршруту.
  • Голосовые подсказки: нет.
  • Тип карт: растровые - ozf2, ozfx3.
  • Источники карт: свободные on-line-источники. Но создать ozf2-карту по любому источнику - решаемая задача. А ещё можно найти на трекерах много интересного, например, километровку
  • On-line сервисы: нет.
Использую и её иногда.

Maveric

http://code.google.com/p/androzic/

"Внедорожный навигатор". Довольно простая программа.
  • Лицензия: проприетарная. Бесплатная версия имеет ограничения, например, только пять путевых точек...
  • Запись треков: есть.
  • Мониторы: есть, только основные.
  • Прокладка маршрутов: не предусмотрена. Возможно ведение по нарисованному вручную маршруту.
  • Голосовые подсказки: нет.
  • Тип карт: растровые, можно качать с помощью Mobile Atlas Creator.
  • Источники карт: on-line-источники, но не так много, как у конкурентов. Например, нет карт Google. Но спутниковые также есть у Microsoft, которые в Maveric представлены.
  • On-line сервисы: нет.
Достаточно красиво выглядит, но, на мой взгляд, не нужна. Проприетарная, а ничего особенного от нет.

2ГИС

http://www.2gis.ru/

Для нахождения чего угодно в пределах города - вне конкуренции по крупным городам России. Да и по мелким областным - тоже хорошо. Фирма, трамвайная остановка, военкомат... Не для туризма, не для автомобиля.
  • Лицензия: проприетарная, но бесплатная. В отличие от компьютерной, без рекламы.
  • Запись треков: нет.
  • Мониторы: нет.
  • Прокладка маршрутов: нет.
  • Голосовые подсказки: нет.
  • Тип карт: векторные, собственные.
  • Источники карт: ничего из интернета не требует.
  • Поиск по карте: великолепно. Умеет искать, как проехать на общественном транспорте!
Просто необходимая в телефоне программа.

Прочие

  • Ещё имеются OpenSatNav, Osmand, yozi, RMaps - слишком скромный функционал, на мой взгляд. Рассмотренные выше программы превосходят их. А RMaps, кстати, давно не развивается. 
  • Есть Navit - свободный векторный навигатор (!). Но не смог разобраться за 10 минут, как заставить работать, а дальше и не стал. Вроде-как перспективный, но сырой. Также, есть бесплатный CityGuide от mail.ru. Его я тоже не смог заставить работать. Ещё у него, как мне показалось, совершенно невменяемый нестандартный интерфейс.

Мой выбор

В результате, в городе для нахождения нужных мне объектов я использую 2ГИС и смотрю пробки на Яндекс-картых. Иногда прошу последние составить маршрут, чтобы посмотреть, сколько он времени займёт с учётом пробок. А езжу-то я на автобусе.
В походе - OruxMaps + Adrozic. На пробежке и велосипеде - OruxMaps.

В будущем напишу подробнее про подготовку карт на компьютере.

1 комментарий: