Set up and manage location tracking
Overview
Location tracking is an important aspect of the Skedulo and Skedulo Plus mobile apps and is required for many features to function. Location data is used extensively in our mobile apps to enable features like route optimization and proximity notifications, which rely on the current position of the user to function correctly.
Location tracking and privacy
Location data is sensitive.
Skedulo handles this data in a secure and reasonable manner. We will never share the location of a resource outside of our application and we will only ever track the location of a resource if they are currently using the mobile application or it is running in the background, and they have agreed to the permission request to track their location.
The Skedulo v2 mobile app and Skedulo Plus mobile app are capable of tracking resource location in near real-time if this has been allowed by the resource in the app settings. This data is then written into the database where it is consumed by the Actual Times tab in the Skedulo web app work details page.
Skedulo stores location information server-side indefinitely for the purposes of providing these services to our customers and improving predictive features, such as work optimization and work auto-completion. We will never share this information with any third parties.
Mobile app users will be tracked at all times after they have logged in if the location tracking is enabled and working as expected. The tracking will stop in any of the following circumstances:
- The resource disabled location permission on the Skedulo or Skedulo Plus mobile app or on the device.
- The resource is no longer available, for example, today’s availability is 8AM to 5PM, then the tracking will start after 8AM and end at 5PM.
- There is no GPS signal.
- The resource logs out of the mobile app.
Users can choose permission for precise or approximate location tracking permission by selecting While using the app
or Only this time
. To avoid location tracking altogether, select Don't allow
when prompted by the app.
You can read about our privacy policy here.
Policies
The Skedulo and Skedulo Plus mobile apps have policies that determine when they track the location of a resource.
Conditions determine the policy selection to use for location tracking.
Location Update Policy | Description |
---|---|
Disabled | The user is not logged in or not available. |
PowerSave | The device is in low-power mode (10% or less battery power). |
Coarse | The user has no active jobs or the job is not EnRoute . |
Fine | The device is not charging but we are using fine-grained location tracking for route information. |
Superfine | The device is charging and we are actively tracking the resource location. |
Conditions
Policies are selected by evaluating conditions.
Condition | Description |
---|---|
LoggedIn | The app is logged in to a Skedulo team. |
Available | This is true if the user is available. This will be false if the user is unavailable. For example, if they are only available from 8AM to 5PM and it is currently 6PM. |
LowPower | If the device has 10% or less battery power. |
ActiveJobs | If any jobs for the day are set to EnRoute , Checked In , or In Progress . |
Charging | If the device is plugged into power and charging. |
EnRoute | If any jobs are set to EnRoute . |
Policy selection logic
A policy is selected based on the conditions.
Each of the following lines of logic is evaluated one after the other. If a logic check is matched, the resulting policy is selected and no further processing is done. If the logic check fails, the next line is processed.
The logic is as follows:
-
If the user is not
LoggedIn
or they are notAvailable
then Disabled is selected. -
If the device has
LowPower
then PowerSave is selected. -
If the user has
ActiveJobs
and the device isCharging
and a job is set toEnRoute
, then Superfine is selected. -
If there are any
ActiveJobs
that are set toEnRoute
then Fine is selected. -
If there are any
ActiveJobs
then Coarse is selected.
Examples
-
The user is logged in, there are active jobs, and they are en route to a job, but not charging the device, then Fine is selected.
-
The user is logged in, there are active jobs, and they are en route to a job but their device’s battery power is 5%, then PowerSave is selected.
-
The user is logged in, they are charging the device, but they have no active jobs, then Coarse is selected.
-
The user is logged in, they are charging the device, there are active jobs but the resource is not available for the current time, then Disabled is selected.
Settings and descriptions
Settings | Description |
---|---|
TrackingEnabled |
Determines if location tracking is enabled or not. |
MinimumTime |
The elapsed time between location updates will never be less than minTime, although it can be more depending on the location provider implementation and the update interval requested by other applications. |
MinimumDistance |
The minimum distance (measured in meters) a device must move horizontally before an update event is generated. |
AllowBackgroundUpdates |
Whether background location updates should be allowed (>= iOS 9). |
PauseLocationUpdatesAutomatically |
Whether location updates should be paused automatically when the location is unlikely to change (>= iOS 6). |
DeferLocationUpdates |
Whether the location manager should defer location updates until an energy efficient time arrives, or distance and time criteria are met (>= iOS 6). |
DeferralTime |
If deferring location updates, the minimum time that should elapse before updates are delivered (>= iOS 6). |
ListenForSignificantChanges |
Whether the location manager should only listen for significant changes in location, rather than continuous listening (>= iOS 4). |
Settings and their parameters
Disabled
Setting | Parameter |
---|---|
TrackingEnabled | false |
Powersave
Setting | Parameter |
---|---|
TrackingEnabled | true |
MinimumTime | 2 minutes |
MinimumDistance | 1 km |
AccuracyType | Low |
AllowBackgroundUpdates | false |
PauseLocationUpdatesAutomatically | true |
DeferLocationUpdates | true |
DeferralTime | 30 minutes |
ListenForSignificantChanges | true |
Coarse
Setting | Parameter |
---|---|
TrackingEnabled | true |
MinimumTime | 0 Seconds |
MinimumDistance | 100 m |
AccuracyType | Medium |
AllowBackgroundUpdates | true |
PauseLocationUpdatesAutomatically | true |
DeferLocationUpdates | true |
DeferralTime | 7 seconds - 5 minutes |
ListenForSignificantChanges | true |
Fine
Setting | Parameter |
---|---|
TrackingEnabled | true |
MinimumTime | 0 Seconds |
MinimumDistance | 30 m |
AccuracyType | High |
AllowBackgroundUpdates | true |
PauseLocationUpdatesAutomatically | true |
DeferLocationUpdates | true |
DeferralTime | 7 seconds - 1 minute |
ListenForSignificantChanges | false |
Superfine
Setting | Parameter |
---|---|
TrackingEnabled | true |
MinimumTime | 0 seconds |
MinimumDistance | 10 m |
AccuracyType | High |
AllowBackgroundUpdates | true |
PauseLocationUpdatesAutomatically | false |
DeferLocationUpdates | false |
DeferralTime | 7 seconds |
ListenForSignificantChanges | false |
Enable or disable location tracking
Location tracking is used to monitor work travel progress and provide proximity alerts. However, a mobile user can enable or disable location tracking on their mobile at any time, via their mobile device settings.
Disable location tracking on iOS
-
Open Settings, then tap Skedulo to open the app settings. This is where the mobile user can change their Skedulo access permissions for Location.
-
There are four choices for allowing Skedulo access to the mobile’s location:
- Never
- Ask Next Time Or When I Share
- While using the app
- Always
Enable location tracking using either Always or When using the app.
-
To disable location tracking, select Never.
If Never is selected:
-
The resource will appear to be located at their home address (as defined in their user profile) on the Skedulo web app. Note, there may be a time lag in updating a resource’s location when they log out of the Skedulo mobile app.
-
Live tracking will not be possible, including the resources Actual location.
-
Proximity notifications will not be available.
Device tracking notifications
When the app is running in the background, resources are actively notified if location tracking is active —on both Android and iOS mobile devices.
iOS device location tracking notification
iOS devices provide location tracking notification by highlighting the timestamp in the top left corner. Tapping the highlighted timestamp opens the Skedulo app or any other app that is tracking location.
When the app is open the icon in the top left corner indicates that location tracking is active.
Note
Using iOS10 or older may behave slightly different using the Always option.Android device location tracking notification
Android devices indicate location tracking via a notification on the lock screen and via a small app icon at the top of the device.
Android devices also inform users (via a pull-down panel) what level of tracking is active and the reason why it is enabled.
Users can pause the tracking by tapping the Pause tracking text link in the pull-down notification.
Important
Skedulo will continue to track the location of a resource when the app is running in the background. Users should close or log out of the app to stop location tracking.Feedback
Was this page helpful?