Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How is location accuracy measured in Android?

Does anyone know the proper interpretation of the accuracy measurements returned by getAccuracy()? For instance, are they calculated as:

  • Circular Error Probability (meaning, if i understand correctly, radius of a 50% confidence circle)?

  • Radius of 95% confidence circle?

  • something else?

In addition, what are the actual calculations that are used and how much can we rely on them? Does it depend on the source of the location estimate (GPS vs. network)?

Many thanks for any advice you can give me.

like image 687
John R.B. Palmer Avatar asked Jun 16 '10 10:06

John R.B. Palmer


People also ask

How accurate is location on Android?

GPS: Maps uses satellites to know your location up to around 20 meters. When you're inside buildings or underground, the GPS is sometimes inaccurate. Wi-Fi: The location of nearby Wi-Fi networks helps Maps know where you are. Cell tower: Your connection to mobile data can be accurate up to a few thousand meters.

How is location accuracy measured?

To calculate its position, a GPS device measures its distance (range) from multiple GPS satellites. URE is a measure of ranging accuracy. User accuracy refers to how close the device's calculated position is from the truth, expressed as a radius.

How accurate is mobile phone location?

Based on an independent third party study, the reality is that on average, location data obtained via mobile smartphones is accurate up to 30 meters.

How does Google location accuracy work?

When you turn off Google Location Accuracy, your phone uses GPS and sensors, like accelerometer, to determine location. GPS can be slower and less accurate than other sources. When Google Location Accuracy is off, GPS, Wi-Fi, network, and sensor data are not used or collected by Google Location Accuracy.


2 Answers

To answer one part of the question, the number is the radius of 68% confidence, meaning that there is a 68% chance that the true location is within that radius of the measured point in meters. Assuming that errors are normally distributed (which, as the docs say, is not necessarily true), that means that this is one standard deviation. For example, if Location.getAccuracy returns 10, then there's a 68% chance the true location of the device is within 10 meters of the reported coordinates.

http://developer.android.com/reference/android/location/Location.html#getAccuracy()

like image 169
karl Avatar answered Sep 30 '22 11:09

karl


The location is a tricky task to do, when you have a limited battery life and when there is no GPS signal in buildings and in areas with many big building and etc. But Android makes it a much easier. When you request a location, you just have to specify what accuracy do you need.

If you specify that you want an accuracy for an example *100 meters*, Android will try to get the location and if it can get a location for accuracy 70 meters, it will return it to you, but if Android can get a location with an accuracy higher than 100 meters, your application will wait and will not receive anything till there is a location in such accuracy.

Typically Android will first get the Cell ID and then will send it to Google server, which maps such Cell IDs and the server will return a latitude and longitude with an accuracy which is low for an example 1000 meters. By this time Android will also try to see all WiFi networks in the area an will send information about them too to the Google server and if possible Google server will return a new location with higher accuracy for an example 800 meters.

By this time the GPS will be on. The GPS device needs at least 30 seconds from a cold start to get a fix, so if can get a fix it will return latitude and longitude but again with an accuracy, which will be the highest possible for an example 100 meters. The longer the GPS works, the better accuracy you will get.

Important notice: The first two methods requires an internet connection. If there is no data connection, you will have to wait for the GPS, but if the device is in a building, you will probably get no location.

like image 25
vendor Avatar answered Sep 30 '22 11:09

vendor