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
The AndroidGPSData
object represents data that was obtained from the GPS sensor of the connected mobile device. You can use this object to get the current location of the device (either the actual or a mock location). See Geolocation Testing (Legacy).
The GPSData
object is returned by the Device.GPS.Location
property.
The device must be connected to Android Debug Bridge.
The Android Agent service must be installed and running on the device. |
Members
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));
}