Android 获得更精确的GPS SNR/PNR/仰角/方位角精度
现在,我正在使用Android 获得更精确的GPS SNR/PNR/仰角/方位角精度,android,Android,现在,我正在使用gpsStatus从android SDK获取卫星列表。我使用以下方法检索变量: float az = item.getAzimuth(); float el = item.getElevation(); int p = item.getPrn(); float s = item.getSnr(); 到目前为止,我得到的精度值仅为1点,大部分为.0,例如: (173.0,47.0,74,30.0)对于浮点数,是否还有其他方法可以获得更高的精度?我能够使用标准从精度、纬度和经度中
gpsStatus
从android SDK获取卫星列表。我使用以下方法检索变量:
float az = item.getAzimuth();
float el = item.getElevation();
int p = item.getPrn();
float s = item.getSnr();
到目前为止,我得到的精度值仅为1点,大部分为.0,例如:
(173.0,47.0,74,30.0)对于浮点数,是否还有其他方法可以获得更高的精度?我能够使用
标准
从精度、纬度和经度中获得更高的精度。我也需要尝试获取尽可能精确的卫星信息数据。谢谢。对此我不是100%肯定,但我相信大多数(如果不是全部的话)GPS接收机只能输出最接近角度的方位角和仰角数据。类似地,SNR值只给出最接近的整数(也许专业级接收机会给出更精确的SNR测量,但我不知道任何基于智能手机的接收机会这样做)。当然,PRN只是整数值
因此,我担心您的问题的答案(如果我对GPS接收机的看法正确的话)是,使用任何Android API都不可能获得更精确的方位角、仰角和信噪比信息,因为API只检索接收机输出的任何信息
我能想到的获得更准确方位角和高程值的唯一可能性是从一些在线来源检索GPS卫星年鉴,然后使用大地测量公式计算当前位置的预期方位角和高程。换句话说,一项不那么容易的任务
顺便说一句,您提到的输出是“大部分是.0”,但我认为如果您回去检查,所有值都以.0结尾 我有点被你的评论搞糊涂了,你用了一个标准来提高精度、纬度和经度。getLatitude()和Get经度()将始终返回双精度变量。getAccuracy()将始终返回单个精度变量。的确,标准可能要求LocationManager返回更精确的GPS结果,但变量仍将具有相同的精度。