Best Practices

 When Comparing Two or More Devices:

Run the application at the exact same time, and in the same place (i.e., put the devices right next to one another): GPS and other positioning technologies are heavily influenced by the environment, which can include the time of day as well.:
  1. Run the application at the exact same time, and in the same place (i.e., put the devices right next to one another):  GPS and other positioning technologies are heavily influenced by the environment, which can include the time of day as well.
  2. Enter the same exact latitude and longitude in both devices:  If you don't have the reference latitude and longitude for your location, just set the ground truth location on one device by tapping on the screen.  Then, use the "Show QR Code" feature on the first device to show the QR code of your location, and use the "Scan QR Code" feature on the second device to copy that location.  To use the Scan QR Code feature, you must have the free "Barcode Scanner" app from the Android Market installed on your device.
  3. Have Wi-Fi on both devices in the same state:  Have Wi-Fi on both devices either turned on, or turned off.  Android's Network LocationProvider uses Wi-Fi to provide a more accurate position than using cellular network data alone, so having Wi-Fi turned on for one device and off for the other device could give the device with Wi-Fi an advantage.

Known Limitations:

WGS 84 Datum Limitations

Horizontal error is calculated by using Android Location API's Location.distanceTo() method, which measures the distance from the calculated location to the ground truth location.  The accuracy of horizontal error is therefore subject to the limitations of the underlying code in the Android platform for the device that makes this calculation. The open-source code which implements the methods in the Location object for the Android platform uses the Inverse Formula to calculate distance between points on the WGS84 ellipsoid.  The Inverse Formula is defined in Section 4 of the paper "Direct and Inverse Solutions of Geodesics on the Ellipsoid with Application of Nested Equations", T. Vincenty, Survey Review Vol. XXII, No. 176, Ministry of Overseas Development, April 1975.

For extremely horizontal accurate measurements under one meter, the WGS84 datum limits the resolution of accuracy.  Therefore, no matter how accurate you make your GPS ground truth location, there is always an error of +/- one meter due to the limitations of measuring distance using the WGS84 datum.

Java Data Type Limitations

All error measurements in the GPS Benchmark application are made using operations on Java double data types, and therefore these operations are subject to the constraints of the Java double data type.

Device Memory Limitations

Since the GPS Benchmark application continuously calculates statistics and must save all samples to calculate the final test summary, there is a limitation in the number of samples that can be captured by devices due to constraints on memory size.  These constraints will vary depending on the specific device.  If you have problems calculating a test over a long period of time, reduce the sampling rate until you are able to successfully capture the duration of the test.  For example, if you want to sample GPS over a 12 hour period and using a Sampling Interval of one second causes the device to run out of memory, then try adjusting the Sampling Interval to to 60 seconds.  This reduces the total number of samples captured over the 12 hour period, thus allowing you to run the test for the desired duration.
Mobile Google Maps API Imagery Limitations

If you set your ground truth location by tapping on the map, you are relying on the accuracy of the Google Maps satellite imagery and the resulting latitude and longtide that is returned from the map API.  There are limitations of satellite imagery accuracy in Google Maps/Earth, and therefore y.  For the best accuracy results, it is always best to enter an exact latitude and longitude via the keypad or QR Code that is based on known high-accuracy and high-resolution orthorectified imagery.  A paper by David Potere, "Horizontal Positional Accuracy of Google Earth's High-Resolution Imagery Archive," discusses these issues if further detail.
Google Earth v5.2 Limitations

Google Earth v5.2 appears to treat KMZ and KML files slightly differently than earlier versions. Currently, it appears that the timelapse feature is broken on KML/KMZ files in v5.2 that worked fine in v5.1 and works fine in v6.0.

It is currently recommended that you use Google Earth v6.0 or higher. First, uninstall Google Earth v5.2 from your computer. Then, you can download Google Earth v6.0 by going to the main download page.