通过Android操作系统公开GPS NMEA流



我正在尝试在Android上运行一个C应用程序/驱动程序,该应用程序/驱动程序读取来自GPS设备的串行NMEA流。 只要我从正确的设备(例如/dev/ttyUSB0、ttyS0 等)读取,我就可以在 Linux 平台上成功运行此驱动程序。

驱动程序在Android操作系统上运行,但我不知道设备如何暴露给操作系统,所以我无法在GPS流中读取。 有谁知道这是否可以直接通过操作系统访问,或者我是否需要额外的驱动程序/内核模组?

我不是在寻找任何位置管理器或 JNI 答案。

谢谢!

恐怕它必须是LocationManager API,除非你有根手机。漫长的路线是通过实现 GpsStatus.NmeaListener 来获取 GPS 流,并调用 JNI 回调并获取 C 格式的流。但我不认为这就是你所追求的。我认为您想直接访问连接了GPS硬件的串行设备。我认为这很难通过安卓安全/权限模型实现。

最新更新