Q:

Meaning of the Accuracy value returned by Android GPS

I want to know that what is the meaning of the accuracy value returned by 
location.getAccuracy()

For example: If it returns "1" , than what does it means?

A:

From the Android docs (http://developer.android.com/reference/android/location/Location.html#getAccuracy())

public float getAccuracy ()
Added in API level 1 Get the estimated accuracy of this location, in
  meters.
We define accuracy as the radius of 68% confidence. In other words, if
  you draw a circle centered at this location's latitude and longitude,
  and with a radius equal to the accuracy, then there is a 68%
  probability that the true location is inside the circle.
In statistical terms, it is assumed that location errors are random
  with a normal distribution, so the 68% confidence circle represents
  one standard deviation. Note that in practice, location errors do not
  always follow such a simple distribution.
This accuracy estimation is only concerned with horizontal accuracy,
  and does not indicate the accuracy of bearing, velocity or altitude if
  those are included in this Location.
If this location does not have an accuracy, then 0.0 is returned. All
  locations generated by the LocationManager include an accuracy.

So basically, if it returns 1, that means there is a 68% probability that you are within 1 meter of the GPS location reported.

A:

The whole point of the accuracy level means that you're within X distance. Your returned location value was 20 meters from your actual position; the accuracy was 20 meters. That's the best you can do with that accuracy. You should get better accuracy than that if you're using GPS versus simple cell tower triangulation.
The lower the number returned by location.getAccuracy() is, the more accurate it has.
getAccuracy() describes the deviation in meters. So, the smaller the number, the better the accuracy.

