谷歌gps

【谷歌Android系统的GPS是怎样运行的】 现在让我们理解每一样东西 GPS芯片 直接与GPS卫星通讯的射频接收机。 GPS驱动 GPS驱动系统软件,使用低阶API和GPS芯片通讯。在系统层上它可能包含一个或多个加载在/System/Lib/hw/或/Vendor/Lib/hw/目录的文件,文件名称通常前缀为G...

谷歌Android系统的GPS是怎样运行的

现在让我们理解每一样东西
GPS芯片
直接与GPS卫星通讯的射频接收机。

GPS驱动
GPS驱动系统软件,使用低阶API和GPS芯片通讯。在系统层上它可能包含一个或多个加载在/System/Lib/hw/或/Vendor/Lib/hw/目录的文件,文件名称通常前缀为GPS而后缀为So(例如,gps.default.so、gps.aries.so等等)主要取决Android版本与智能平台的差异有所不同。

GL引擎



实际上这是整个系统的核心,在系统层上它由加载在/system/bin目录名类似于glgps或gpsd的文件组成(平台特定)。

GL引擎使用配置参数运行,由.xml 和.conf 文件构成(例如,glconfig.xml、gps.xml、Jupiter.xml、gpsconfig.xml、gps.conf、secgps.conf等等)。实际位置和文件的名称也取决于Android版本与平台,但是,他们大多是在/system/etc、/system/etc/gps、/vendor/etc/、/data/gps等等。取决于配置和平台,它需要源于发射塔的初始位置信息, 然后它读取NVRAM(Non-volatile memory,非易失性存储器),NVRAM信息主要在/有着.sto扩展的文件(例如,gldata.sto)与附加数据文件(如lto.dat、xtra.bin、epo.dat等等)的data/gps目录。

GL引擎使用所有的这些信息指示并协助GPS驱动,大多GL引擎都可以探测到多个GPS卫星而为了GPS驱动的规划,但对于锁定,它还需要一些额外的信息(定时、应用周期管理等),它可以从GPS卫星下载(独立模式:速度非常缓慢,比特/秒)或利用互联网来访问SUPL(Secure User Plane Location,安全用户层面定位)/NTP(Network Time Protocol,网络定时协议)服务器(基于主存储器的协助,速度快,兆位/秒)

当所有的这些都激活后,它将保存所有数据在NVRAM中,以供将来调用。

Android构架
它包括像使用GL引擎提供服务到用户应用程序的位置管理器等Android框架。

用户应用程序
位置服务应用,像Google Maps(谷歌地图)、Sygic(导航系统)、Navigon(路航)、TomTom(通腾)等等。

在心里记住以上所有的内容了吗?现在让我们看看市场中GPS Faster Fix Solutions(更快的解决方案)是如何做的。

更快的解决方案,像GPS状态、GPS工具组、GPS测试、GPS侦测等等,主要为处理两件事:

下载XTRA数据(lto.dat、xtra.bin、epo.dat、gldata.sto等)
修改GPS.conf(更改这个系统级的配置文件,你当然要取得你的Android设备的Root权限)
尽管如此,它并不完全是这样的。

设备使用谷歌作为安全用户层面定位服务器,但大多数设备由于无效或过期的证书无法使用它。在这样的情况中,即当谷歌服务器拒绝协助请求时,用户应该使用SUPL.NOKIA.COM:7275,这虽然缓慢,但比什么都没有更好。

如果GL引擎或GPS驱动有问题,则可能需要重新写入它,但首先得确保物理硬件GPS芯片没有问题。

对于其他的配置参数,用户们常可以修改xml配置文件,比如,至少你可以获得调试日志来了解错误的发展方向,你可以使用下面的参数
cLogEnabled= true acLogDirectory= /sdcard/gps and LogPriMask, LogFacMask and also DEBUG_LEVEL(gps.conf)

当然,无论怎样,你首先得备份原始的文件。

希望每位用户使用这个指南后都能轻松地提高他们的GPS性能。
继续阅读:谷歌Android系统的GPS是怎样运行的