NMEA сообщение для Android Расположение - PullRequest
0 голосов
/ 29 ноября 2011

Я работаю с внешними GPS, так как они гораздо точнее.У меня уже установлено соединение Bluetooth, но теперь я застрял в потоке сообщений в формате NMEA.

Похоже, поскольку вы можете получить NMEA из встроенного стека GPS, должен быть способ получить местоположение по сообщению NMEA.

Как мне перейти к конвертациимои сообщения NMEA в полезные объекты Location?

1 Ответ

8 голосов
/ 29 ноября 2011

NMEA довольно легко разобрать. Существуют различные типы предложений для разных вещей. Для данных о местонахождении, предложение, которое вам нужно рассмотреть, это «рекомендуемый минимум», $GPRMC.

Пример отсюда: http://aprs.gids.nl/nmea/#rmc

$GPRMC,225446,A,4916.45,N,12311.12,W,000.5,054.7,191194,020.3,E*68
  • 225446 (время исправления 22:54:46 UTC)
  • A (предупреждение приемника навигации A = ОК, V = предупреждение)
  • 4916.45,N (Широта 49 град. 16.45 мин. Севернее)
  • 12311.12,W (долгота 123 град. 11,12 мин на запад)
  • 000.5 (скорость относительно земли, узлы)
  • 054.7 (Курс сделан хорошо, правда)
  • 191194 (Дата исправления 19 ноября 1994 г.)
  • 020.3,E (магнитное отклонение 20,3 градуса к востоку)
  • *68 (обязательная контрольная сумма)

Возможно, вас также заинтересует $GPGSA, в котором есть длинные спутниковые данные с разведением позиции (качество определения).

Если для синтаксического анализа NMEA нет внутреннего класса, вы можете использовать эти примеры, чтобы легко создать его самостоятельно. К сожалению, я не разработчик Android, поэтому я не знаю, какие внутренние классы вам доступны.

...