User Experience

The main things that the user will experience in regards to location tracking is the persistent notification and the battery manager white listing dialogs. These have been added to give the app as much access as possible to run location readings in the background and send it to the server.


Persistent Notification

When the user logs in, a notification icon is displayed in the notification bar (top of the screen). When the notification area is displayed (drag down from the top), a notification is displayed telling the user that the app is running in the background. This notification will be there as long as the user is logged in.

When the user clicks on the notification, the user is taken to the app. The first time the user clicks on it, instead of being taken to the main screen, it will be taken to the location-info screen. This screen will inform the user about why the notification is there and how they can hide it.

The notification can normally be hidden by long clicking on it and selecting to not display notifications from the "ongoing service" channel. Every time the user clicks on the notification after that, the app will go directly to the main screen.

On Android versions lower than 7, it is not possible to hide it. 


White listing Dialogs

Whenever the app is opened for the first time or after being cleared from memory (swiped away from the Recent apps screen), one or more dialogs will be displayed. These dialogs tell the user to remove the app from any battery manager that is running on the device. The battery managers can stop the app from running in the background which will severely impact the apps ability to track and report user location to the service.

See dontkillmyapp.com for more info on how to get around battery managers for the most common phone manufactures.

 

Battery life

Battery life will not be noticeably affected by the persistent notification. The app should generally have a low battery usage.