Android上的DGPS校正Android、DGPS

2023-09-07 04:55:32 作者:心软脾气暴

我正在开发一个项目,该项目旨在使用 Android 手机和附近站点的 GPS 功能,使用 RTK DGPS 技术计算更精确度数 (cm) 的定位.

I am developing a project that is intended to use the GPS capabilities of an Android phone and a nearby station to compute positioning to a much more precise degree (cm), using RTK DGPS technology.

到目前为止,我还没有看到有人说他们实际上设法执行了类似的任务(除了@GPSmaster,谁不解释如何),APK似乎没有提供来自GPS芯片的任何信息而不是位置和 NMEA 消息更新.如果可能的话,我需要伪距和载波相位.

So far, I haven't been able to see anyone saying they actually managed to perform a similar task (apart from @GPSmaster, who doesn't explain how), and the APK doesn't seem to offer any information from the GPS chip other than location and NMEA message updates. I need, if possible, pseudo-ranges and carrier phases.

我想知道是否:

可以使用本机代码或其他较低级别的窥探在我的手机上查找较低级别的挂钩;可以将 RTCM 校正发送到这些设备之一上的 GPS 芯片;

有什么想法吗?

推荐答案

不,通过 Android 应用程序对 GPS 设备进行任何较低级别的访问是不切实际的.这有几个原因:

No, it is not practical to get any lower level access to the GPS device by an Android application. This has several reasons:

应用程序无法通过基于 Java 的 API 访问 GPS 设备.大多数设备都禁止使用本机代码,并且通常需要 Java 包装器来通过 Android 传感器设备的沙箱进行隧道传输.这构成了主要的安全概念.

The application has no other means of accessing the GPS device as through the Java based API. Native code is forbidden to use most devices and usually needs a Java wrapper to tunnel through the sandbox for Android sensor devices. This makes up the main security concept.

如果本机代码可以访问较低级别的 GPS 设备,则它必须处理现在未被 API 抽象的几种不同的制造商协议.最好的机会是访问自定义 NMEA 代码,该代码可能仍存在与设备相关的警告.

If native code would have access to the GPS device on a lower level, it would have to cope with several different manufacturers protocols now not abstracted by the API. Best chances are to get access to custom NMEA codes, which may still have device dependent caveats.

即使可以进行较低级别的访问,也会失去其他位置源(如 WLAN 和手机运营商)的集成合并,这些位置源可能在 Java API 之下但在 NMEA 协议之上的本机代码中合并.

Even if lower level access would be possible, one loses the integrated merging of other location sources like WLAN and cellphone carrier, that are presumably merged in native code below the Java API but above the NMEA protocol.