我最近知道了一个在/system/etc/
目录下的gps.conf
文件。
似乎将NTP_SERVER值调整为更接近通常位置的NTP服务器可以改善TTFF。
阅读LocationProvider
类中的源代码,似乎在启动时从NTP服务器检索时间并将其“注入”计算。
据我所知,每个GPS卫星都有非常精确的原子钟,并且每个卫星都与所谓的“GPS时间”同步。一旦接收器获得4个或更多卫星,它会解决(通过某种方法)一个方程式,在其中有四个未知数:x,y,z,b;其中(x,y,z)是接收器位置,b是接收器内部时钟与(正确的)GPS时间之间的时间差。一旦它有一个位置修复,接收器时钟就与正确的时间同步了。(如果我错了,请纠正我)。
到目前为止,我对NTP时间注入的方式有一些问题:
- GPS时间大约是TAI(国际原子时间)加上一个偏移量。这两个时间不依赖于地球自转,但UTC依赖于它。鉴于NTP服务器返回UTC时间,是否可以从UTC时间推断出GPS时间?
- 如何从更近的服务器检索NTP时间可以改善GPS时间近似值的“质量”?
- 假设我们有一个初始的GPS时间值(从某种方式推断出的NTP时间),注入是关于什么的?这个时间值被视为正确的来解决只有x,y,z为未知数的方程吗?如果是这样,那么第一个修复也只是一个近似值,对吗?
- 高质量的GPS时间初始近似值如何提高TTFF?这是因为使用低质量的NTP时间会将第一个修复视为不可接受并丢弃吗?
- 是否具有近似的初始位置有助于检索下一个正确的修正(例如仅侦听卫星子集)?