About the App

DataTracker is an app which allows to keep track of data collected during an experiment, or simply for monitoring something, as quality of water, air or any data you want and display them in a chart.

It is a fully functional App which I made from scratch for Android Developer Nanodegree Program of Udacity school.

Skill level: intermediate.

View on Github
DataTrack screen showing the list of tasks.

Tasks Editor

Each task created is provided of a settable duration of an experiment and its intervals of operation repetition for an unlimited number of steps. Each step completed is tracked and showed as percentage of completion. An alarm is provided, which is repeated at each interval, for remember the user when have to do the next measure until the task is completed. The system detects automatically when a changing occurs and an alert is shown when the user leave the editor without saving. All data are saved locally into a SQLite database.

DataTrack Task editor screen

Deleting a task

A deleting button is been added to a swipe dismission to avoid accidental deletion which occurs dragging and dropping without know what are doing. In this way the red colour inform the user that attempt to doing something of dangerous, but without annoying with alert message.

DataTracker screen for deleting task

Data processing

All data are collected in a table, reporting the abscissa and ordinate. From time to time a data is added, the percentage of completion is updated and showed in the chart.

With the tabs layout, the user can easily swapping from the chart to data screen and vice versa, keeping however a comfortable space of managing also for smaller screen.

DataTracker screen for data processing

Automatic Backup and Theme Switching

A Backup service is provided, kept alive also after reboot, which performs an automatic backup on a server of the data collected in a SQLite database. A notification is shown when the backup is completed with successful. At moment the server side is not yet implemented.

An instant theme switching is also provided in the settings activity.

DataTracker settings screen

Libraries used

  • MPAndroidChart is used to display the chart.
  • Circle-Progress-View for showing the task progress.
  • Firebase JobDispatcher for scheduling background jobs.
  • Android Support Preference V7 for saving settings.
  • Recyclerview, cardview and design android support library for displaying the data.
Giuseppe Santoro