2

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

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

我不是在寻找任何 LocationManager 或 JNI 答案。

谢谢!

4

1 回答 1

0

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

于 2015-11-10T05:41:24.937 回答