【问题标题】:Parse NMEA data in Android 2.3在 Android 2.3 中解析 NMEA 数据
【发布时间】:2012-11-10 15:05:05
【问题描述】:

我正在尝试从连接到我的 Android 2.3 平板电脑的蓝牙 gps 设备获取数据。 目前,我可以使用 Android 蓝牙堆栈将其配对并从已创建的串行设备中读取。 现在我有很多来自 gps 的 NMEA 数据...我尝试集成一小段 Java 代码来解析这些字符串,但我想知道 Android 框架中是否已经有类似的东西可用.我只需要知道纬度/经度和指南针方向。谢谢!

【问题讨论】:

    标签: android bluetooth gps android-2.3-gingerbread nmea


    【解决方案1】:

    不确定是否存在任何东西,无论如何如果你只是想要你可能只需要解析 RMC 句子的位置,请参阅http://www.gpsinformation.org/dale/nmea.htm#RMC

    一个简单的 Java 代码示例:

    final String sentence = "$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A";
    if (sentence.startsWith("$GPRMC")) {
        String[] strValues = sentence.split(",");
        double latitude = Double.parseDouble(strValues[3])*.01;
        if (strValues[4].charAt(0) == 'S') {
            latitude = -latitude;
        }
        double longitude = Double.parseDouble(strValues[5])*.01;
        if (strValues[6].charAt(0) == 'W') {
            longitude = -longitude;
        }
        double course = Double.parseDouble(strValues[8]);
        System.out.println("latitude="+latitude+" ; longitude="+longitude+" ; course = "+course);
    }
    

    相关问题:Parsing GPS receiver output via regex in Python

    【讨论】:

    • 是的,这就是我现在正在做的事情 :-),我希望有一个解析器已经在 Android 中实现。否则我会走这条路。谢谢。
    • 您可能已经尝试过Java Marine。不知道够不够成熟;该项目似乎不是很活跃。
    • 不,我没有尝试过,但值得一看。谢谢你的建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-17
    • 1970-01-01
    • 1970-01-01
    • 2021-11-03
    • 2018-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多