2014-08-06 3 views
0

У нас есть внешнее устройство Bluetooth, которое передает данные различных типов на устройство Android. Среди прочего он поставляет также строку NMEA NMEA. Данные GPS NMEA должны использоваться для обновления GPS-модуля системы Android. И другие данные будут проанализированы в нашем приложении.Обработка данных с внешнего устройства Bluetooth с помощью строк NMEA GPS

Как этого достичь?

ATM: Я просматриваю все данные с внешнего устройства, но модуль GPS для Android не получает строки NMEA. GPS должен обрабатываться GPS-модулем системы Android для обновления программного обеспечения для навигации. Это программное обеспечение использует только данные GPS для Android, оно не поддерживает функции для накачки данных из других приложений.

ответ

0

Я использовал топовые местоположения. В настоящий момент невозможно избежать синтаксического анализа строки NMEA.

Код:

String mocLocationProvider = LocationManager.GPS_PROVIDER; 
mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE); 
mLocationManager.addTestProvider(mocLocationProvider, false, false, false, false, true, true, false, Criteria.POWER_LOW, Criteria.ACCURACY_HIGH); 
mLocationManager.setTestProviderEnabled(mocLocationProvider, true); 
mLocationManager.setTestProviderStatus(mocLocationProvider, LocationProvider.AVAILABLE, null, System.currentTimeMillis()); 

//update location 
Location mCurrentLocation = new Location(mocLocationProvider); 
          mCurrentLocation.setLatitude(mGPSCurrLat); 
          mCurrentLocation.setLongitude(mGPSCurrLon); 
          mCurrentLocation.setAccuracy(1); 
          mCurrentLocation.setTime(mGPSCurrTimeUTC); //long getTime() from UTC string 
          mCurrentLocation.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos()); 

mLocationManager.setTestProviderLocation(mocLocationProvider, mCurrentLocation); 

Примечание: Включить "Разрешить использование фиктивных местоположений" в настройках андроида!

0

CM версия < = 10 поддержка выбора источника GPS, оттуда вы можете выбрать сопряженные устройства и использовать их в качестве источника для GPS.


Существует Экспоузд модуль, который работает на Android> = 4,2 https://plus.google.com/communities/104930572010612794860


, если у вас нет проблем с не имеющими спутниками информации, вы можете также использовать Bluetooth GPS от PlayStore (требуются макетные местоположения) https://play.google.com/store/apps/details?id=googoo.android.btgps&hl=it

+0

Я искал решение для разработчиков – Solata