Accuracy Property

Applies to TestComplete 15.47, last modified on January 20, 2023
The information below concerns legacy mobile tests that work with mobile devices connected to the local computer. For new mobile tests, we recommend using the newer cloud-compatible approach.

Description

Returns the estimated accuracy of the current location, in meters.

Declaration

AndroidGPSDataObj.Accuracy

Read-Only Property Double
AndroidGPSDataObj An expression, variable or parameter that specifies a reference to an AndroidGPSData object

Applies To

The property is applied to the following object:

Property Value

The estimated accuracy of the current location, in meters. See Remarks.

Remarks

The accuracy denotes the radius of the circular area where the device is probably located.

The accuracy relates to the latitude and longitude values, it does not relate to the altitude.

Example

The code below retrieves location data from the Android device's GPS sensor, posts them to the test log and shows the location in Google Maps:

JavaScript, JScript

function PostGPSLocation()
{
  Mobile.SetCurrent("Nexus 7");
  // Enable GPS
  Mobile.Device().GPS.GPSEnabled = true;
  // Obtain location data
  var Longt = Mobile.Device().GPS.Location.Longitude;
  var Lat = Mobile.Device().GPS.Location.Latitude;
  // Output the location data
  Log.Message("The device location is:");
  Log.Message("Longitude: " + aqConvert.VarToStr(Longt));
  Log.Message("Latitude: " + aqConvert.VarToStr(Lat));
  Log.Message("Altitude: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.Altitude));
  Log.Message("Accuracy: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.Accuracy));
  // Open Google Maps in the browser and pass the coordinates as URL parameters
  Browsers.Item(Browsers.btIExplorer).Run("http://maps.google.com/maps?q=loc:" + aqConvert.VarToStr(Lat) + "," + aqConvert.VarToStr(Longt));
}

Python

def PostGPSLocation():
  Mobile.SetCurrent("Nexus 7")
  # Enable GPS
  Mobile.Device().GPS.GPSEnabled = True
  # Obtain location data
  Longt = Mobile.Device().GPS.Location.Longitude
  Lat = Mobile.Device().GPS.Location.Latitude
  # Output the location data
  Log.Message("The device location is:")
  Log.Message("Longitude: " + IntToStr(Longt))
  Log.Message("Latitude: " + IntToStr(Lat))
  Log.Message("Altitude: " + VarToStr(Mobile.Device().GPS.Location.Altitude))
  Log.Message("Accuracy: "+ VarToStr(Mobile.Device().GPS.Location.Accuracy))
  # Open Google Maps in the browser and pass the coordinates as URL parameters
  Browsers.Item[Browsers.btIExplorer].Run("http://maps.google.com/maps?q=loc:" + IntToStr(Lat) + "," + IntToStr(Longt))

VBScript

Sub PostGPSLocation
  Call Mobile.SetCurrent("Nexus 7")
  ' Enable GPS
  Mobile.Device.GPS.GPSEnabled = true
  ' Obtain location data
  Longt = Mobile.Device.GPS.Location.Longitude
  Lat = Mobile.Device.GPS.Location.Latitude
  ' Output the location data
  Call Log.Message("The device location is:")
  Call Log.Message("Longitude: "& aqConvert.VarToStr(Longt))
  Call Log.Message("Latitude: "& aqConvert.VarToStr(Lat))
  Call Log.Message("Altitude: "& aqConvert.VarToStr(Mobile.Device.GPS.Location.Altitude))
  Call Log.Message("Accuracy: "& aqConvert.VarToStr(Mobile.Device.GPS.Location.Accuracy))
  ' Open Google Maps in the browser and pass the coordinates as URL parameters
  Call Browsers.Item(Browsers.btIExplorer).Run("http://maps.google.com/maps?q=loc:" & aqConvert.VarToStr(Lat) & "," & aqConvert.VarToStr(Longt))
End Sub

DelphiScript

procedure PostGPSLocation;
var Longt, Lat;
begin
  Mobile.SetCurrent('Nexus 7');
  // Enable GPS
  Mobile.Device.GPS.GPSEnabled := true;
  // Obtain location data
  Longt := Mobile.Device.GPS.Location.Longitude;
  Lat := Mobile.Device.GPS.Location.Latitude;
  // Output the location data
  Log.Message('The device location is:');
  Log.Message('Longitude: ' + aqConvert.VarToStr(Longt));
  Log.Message('Latitude: ' + aqConvert.VarToStr(Lat));
  Log.Message('Altitude: ' + aqConvert.VarToStr(Mobile.Device.GPS.Location.Altitude));
  Log.Message('Accuracy: ' + aqConvert.VarToStr(Mobile.Device.GPS.Location.Accuracy));
  // Open Google Maps in the browser and pass the coordinates as URL parameters
  Browsers.Item(Browsers.btIExplorer).Run('http://maps.google.com/maps?q=loc:'+aqConvert.VarToStr(Lat) + ',' + aqConvert.VarToStr(Longt));
end;

C++Script, C#Script

function PostGPSLocation()
{
  Mobile["SetCurrent"]("Nexus 7");
  // Enable GPS
  Mobile["Device"]["GPS"]["GPSEnabled"] = true;
  // Obtain location data
  var Longt = Mobile["Device"]["GPS"]["Location"]["Longitude"];
  var Lat = Mobile["Device"]["GPS"]["Location"]["Latitude"];
  // Output the location data
  Log["Message"]("The device location is:");
  Log["Message"]("Longitude: " + aqConvert["VarToStr"](Longt));
  Log["Message"]("Latitude: " + aqConvert["VarToStr"](Lat));
  Log["Message"]("Altitude: " + aqConvert["VarToStr"](Mobile["Device"]["GPS"]["Location"]["Altitude"]));
  Log["Message"]("Accuracy: " + aqConvert["VarToStr"](Mobile["Device"]["GPS"]["Location"]["Accuracy"]));
  // Open Google Maps in the browser and pass the coordinates as URL parameters
  Browsers["Item"](Browsers["btIExplorer"])["Run"]("http://maps.google.com/maps?q=loc:" + aqConvert["VarToStr"](Lat) + "," + aqConvert["VarToStr"](Longt));
}

See Also

Geolocation Testing (Legacy)
AndroidGPSData Object
Location Property

Highlight search results