Enlarge /. Getting line of sight to multiple GPS satellites down there is quite difficult.
With all of the tall buildings, it can be difficult to find a solid GPS location in a city. Skyscrapers reflect the GPS signal and can drive your location data crazy. Now Google can correct that and offer users a much more accurate location. Google is working on an update that uses the 3D building data from Google Maps to calculate how buildings are interfering with the GPS. According to the new "3D Mapping Aided Corrections Module" from Android, GPS bounces can be corrected.
A quick refresher on how GPS works: your position is triangulated by satellites in space. Your phone receives a signal from a GPS satellite consisting of the satellite's position and a very accurate time stamp. The GPS timestamp tells the phone how long it took the signal to reach you from space. Then just multiply it by the speed of light to find your distance from the satellite. Receiving such a signal from multiple satellites will help you narrow your position on earth to a few feet.
All of these fancy room calculations work great, provided you have a clear view of the sky. GPS triangulation assumes that your signals are transmitted directly from the satellite to your phone. However, this is not always the case. In a city, huge skyscrapers made of glass and metal can reflect the GPS signal as it travels out of space. When your GPS signal has a ricochet, your time x speed of light equation suddenly no longer matches your distance from the satellite, one leg of your triangulation is longer than it should be, and your GPS coordinates are no longer accurate. This could mean that your location is suddenly on the wrong side of the street – or on the wrong block.
Google's GIF shows how buildings reflect GPS. If your GPS signal paths don't form a triangle, bad things will happen.
Google's before and after picture of the corrections. Yellow is the distance actually covered, red is before 3D corrections, blue is after.
Google has worked out a scheme to make GPS work better in cities by correcting the GPS bounces in the distance calculation. Google's "Google" solution for this uses the enormous amounts of 3D building data available in Google Maps. Google doesn't go into the details too much, but if the GPS is bouncing off buildings and you know where the buildings are, they can find and correct the bounce distance. According to Google, the use of the new "3D-aided map corrections" improves the (location) accuracy in cities in a spectacular way. Android's location system can now "reduce the incidence of road errors by around 75%". The before-and-after picture from Google in the gallery above is very clear.
The new 3D GPS correction scheme is introduced for Android as a "3D mapping-based correction module" that is part of the Fused Location Provider API (FLP) from Google Play Services. The FLP is the preferred method for apps to get location on Android. Instead of raw GPS coordinates (which are also available via an API call), FLP represents the best efforts of the system on site while saving battery life. Starting GPS and doing a number of space calculations is very battery-intensive, so FLP tries to do this as little as possible.
For example, almost every Android phone contributes to Google's worldwide database of locations for Wi-Fi access points. So when you're connected to a known access point, Android can tell where you are without the need for GPS. FLP acts as the location provider for the entire system. Instead of five apps trying to start GPS and do their own calculations, FLP can determine your location once and share it with every app that has permission to the background location.
According to Google, the functions work in "3,850 cities around the world" – basically anywhere that Google has 3D building data. The 3D building calculations work with GPS, which is owned by the US military, as well as some of the major global equivalents: Russia's GLONASS, EU Galileo, Japan's QZSS, and even China's BeiDou navigation satellite system, which is only really good for visitors to China, there Google Play Services and the Fused Location Provider are not available for phones sold in China. Currently, Pixel 5 and Pixel 4a (5G) are receiving initial improvements in the improved mapping function. So far this only works when walking. According to Google, the 3D mapping corrections will be carried over to "the entire Android ecosystem (Android 8 or higher)" in early 2021.