Device Location Functionality

IFS Aurena Native apps have two ways of getting the device location:

  1. Location Tracking happens automatically at a desired interval
  2. On Demand locations can be requested via procedure

Saved Locations

All locations recorded can be seen in the EE client by going to the Explore Mobile User page, selecting the username the app is logged in under and then navigating to the Device Locations tab.

Platform-specific Functionality

The IFS Aurena Native apps’ location functionality is different on all three platforms due to the platforms’ limitations.

Windows

There are two sources of tracking locations in the Windows app:

  1. A task that runs in the background, even if the app is suspended
  2. A foreground timer that runs according to the desired frequency

This has the following implications for location tracking on Windows:

Android

There are two things to consider when using Android Location functionality:

  1. The timer used to take location fixes is the in-built Android one which is not very precise, so intervals of less than 1 minute are not recommended. Even with an interval of 1 minute, locations are sometimes only saved every 2 minutes or so.
  2. The current implementation gets its locations using GPS alone, rather than also including Wi-Fi data like other implementations. This can mean that locations are not found when inside a building.

iOS

The iOS Location Tracking functionality relies on the use of an iOS background task, which has a maximum duration of just under 3 minutes. Any location tracking with a desired interval longer than this involves the chaining together of multiple background tasks. This means that the resulting interval might vary slightly from the one desired.

Location Parameters

The behaviour of the location functionality is controlled through Client Parameters sent down from the server under the mobile_client_param table.

LOCATION_ENABLED

The LOCATION_ENABLED parameter controls whether the app can use location services at all. To modify this:

This setting can also be changed for each device through the "Installed Apps/Devices" screen:

If this parameter is sent down to the device as true, the app’s behaviour is then further controlled by the parameters below.

Location App Parameters

To view the other location app parameters:

This should bring up the following 3 parameters:

LOCATION_TRACKING_INTERVAL_MIN

LOCATION_TRACKING_MODE

LOCATION_ON_DEMAND_MODE

Any changes to these parameters will eventually be synced down to the device but can be forced down by re-initializing the device. The device should then follow the behaviour of these parameters.