All our phones are Android GPS. Yes, that thing that allows geolocali accurately. But really, how the heck does it work? Today we raise a little the difficulty level and spend a few minutes to understand the structure and architecture of the GPS. Although it sounds complicated, it is not so.
GPS Architecture
If we look at the header image, we can detect five key components:
• GPS Chip
• GPS Driver
• GL Engine
• Android Framework
• User Applications
Consider how each interacts.
GPS Chip
it is an RF receiver that communicates directly with GPS satellites. For more details about the information that is transmitted or how this component, you can take a look at here or here.
GPS Driver
The GPS uses Driver Low level APIs to communicate with the GPS chip. Is simply a series of files located in / System / lib / HW or / vendor / lib / HW and usually begin with the prefix GPS * and ending with the suffix * SO depending on the version of Android (examples: gps. default. so or gps. aries. so)
GL Engine
The heart of the matter. It consists of an address or path (/ system / bin) followed by names like glgps or gpsd. It works using configuration parameters consist. Xml files or. Conf (glconfig.xml, gps.xml, gpsconfig.xlm, gps.conf). All of these names again depend on the version of Android and usually found in (/ system / etc / system / etc / gps or / vendor / etc).
Depending on the configuration and platform. The GL Engine takes the location information of mobile towers and read the NVRAM (where data is stored in the GPS lock). NVRAM information is basically in / data / gps in files ending in. Sto y. Dat (eg gldata.sto, lto.dat, xtra.bin, epo.dat).
Using this information, the GL Engine Driver attends GPS: basically is able to detect multiple GPS satellites to the GPS is scheduled to Driver, but to fix the position requires additional information that can be downloaded from the same GPS satellites (slower) or you can access the Internet to use the SUPL server / NTP (high speed). Then save all data in NVRAM for future use.
Android Location Services Framework or
It is a series of classes such as the Location Manager, which provide services for an application to use the GL Engine. It is a bridge between the application and the GL Engine. Here a little more info thereon.
User Applications
any application that uses GPS. Google Maps, Navigation, Sygic, etc...
Android GPS |
Improve the speed of your GPS with GPS Fix
Bearing all this in mind we have seen, we will see how all applications / solutions that improve the performance of your GPS such as GPS Status, GPS Test, GPS Doctor and others. Basically, what these applications are two things:
• Download XTRA data (lto.dat, xtra.bin, epo.dat, gldata.sto, etc ...)
• Modify the GPS.conf (root permissions required)
But it does not always work. The devices use default SUPL Server for Google, but sometimes, when changing ROM or X reason, are unable to use it due to invalid or expired certificates. The Google server rejects it and therefore never fixed position.
One possible solution is to change the SUPL server by Nokia (supl.nokia.com: 7275). To do just that you should follow these instructions.
Now you know how the GPS in your Android. I hope it was interesting.
source: xda
No comments:
Post a Comment