Track Work Time – FAQ

Generally: Please use the latest version of the app! It could very well be that your problems are already solved.

Nothing is displayed in the app anymore! Is all my data gone?

Please stay calm, it’s very likely that your data is still available. It can happen that the app has a bug so that the data isn’t displayed, reports are empty or something like that, but it’s all still stored in the app’s internal database.

Additionally, if you granted access to a directory on your device, the app creates an automatic backup once a day, so even if the app runs amok, the backup should still be fine – even more if you established a process like mentioned below which copies the backup to a secure destination.

So if you happen to experience a bug which seems to have wiped everything, please do two things (read carefully):

  • send the log file to the developer (see below)
    • do this on the same day on which the bug happened for the first time (because only the logs of the current day are sent) – if you didn’t do it on the same day: close the app completely, reproduce the error and then send the logs
    • please describe in your email (in English or German) what you did and which error occurred
  • look for new versions of the app and install updates as they appear
    • new releases always appear first on Github
    • Google Play, Amazon Appstore and F-Droid always need some days for internal processes, that’s unsatisfactory but can’t be changed by me
    • descriptions of the changes contained in each release can be found here

I activated the tracking by location or Wi-Fi but it does not work / works only sometimes.

  1. Please make sure you use the latest version of the app. If you don’t have the possibility (or don’t want) to use the Play Store, Amazon Appstore or F-Droid, read “How do I install the lastest APK from Github” below. Sometimes the app stores also don’t contain the latest version yet, the process always takes a few days after a new version is released.
  2. Grant the app all permissions it asks for. On Android 10+ it’s especially important to grant the location permission “at all times” (which means also when the app is not shown).
  3. On recent Android versions the battery optimization seems to be more aggressive. There’s a menu item to exempt TWT from the system’s “optimization” (which is basically only prohibiting the app to do things in the background), look for “disable restrictions” in the lower part of the menu (you might have to scroll).

The notification is only updated when the app is in the foreground.

Probably your device is applying a form of battery “optimization” which prohibits apps which are not visible to the user from doing work (like updating a notification once a minute).

There’s a menu item to exempt TWT from this, it’s named “disable restrictions” (in the lower part of the menu, you might have to scroll). Use it, completely close the app, and it should work.

If the problem persists, please send me your log file on a day on which the notification was not updated when the app was in the background (see below for how to do that).

How can I edit the events?

You can display an editable list of the current week’s events by tapping onto the middle of the displayed table. (Don’t tap on the dates in the left column, see below.)

How can I delete events from the event list?

When the list of events is open (see above), long-press on one event to start the selection mode. Then you can tap on other events you want to select and finally use the trash icon to delete the selected events.

I want to mark some days as holidays or change the target working time for specific days, but I don’t know where.

Tap on the date in the table on the main screen. In the following dialog you can do that, and also delete your changes using the recycle bin icon if you want to.

What does “Flexi Time” mean?

Many companies grant their employees some freedom when they work – as long as they always make sure they work the hours stated in the contract. To cover this, TWT has the concept of “flexi time”. You have to define your weekly working time and which your normal working days are, and the app then distributes your working time evenly over these days. If you work less than the calculated working time for a day, you get the difference substracted from your flexi time. If you work more, the difference is added. Most people work more at the beginning of the week so they can start into the weekend early – the app tells them exactly when they have finished their weekly working time.

How does “Flexi Time” work?

You have to configure the following before you can check “Enable Flexi Time” in the Options:

  • Start Value: Normally 0:00, but you can use this as offset if you start using TWT and already have a specific amount of overtime.
  • Target: How much is your weekly working time (in your contract)? This time is distributed evenly over your working days (see below) to determine the daily target working time.
  • Reset Interval: You can choose to reset your flexi time periodically. The value “none” is the default here and means that any overtime (or undertime) is preserved and not reset.
  • Working Days: Check all days on which you normally work. The days not checked here are marked green in the main table to make it clear that those are non-working days.

After making all the above choices, you can also check the option “Enable Flexi Time”. Your over- or undertime is displayed in the “Flexi” column in the main table from now on.

Hint: If you don’t work the same time on every working day, you can use the notification options to make it easier for you to keep track of your flexi time, especially the options “use flexi time 0:00 as target” (which – in case of overtime – reduces the week’s target working time by it or – in case of undertime – increases the week’s target working time by it) and “countdown to 0:00 every day” (which displays the remaining time as if you want to reach 0:00 flexi time every day). You’re welcome to play with them and use whatever option suits you best.

What does the “Automatic Pause” do?

If you always go to lunch at the same time and the lunch break is always of the same length, you can put that into the settings of “automatic pause” and don’t have to clock out for lunch break and clock in again afterwards. This is especially useful if you use Wi-Fi or location to clock you in automatically, but the cafeteria is in the same building so you won’t get clocked out by the app automatically for lunch break.

Attention: This only does something if you don’t create other events inside the configured pause time. The mechanism checks on clock-out if the just finished period contains the configured auto-pause period and if so, it inserts the events for the auto-pause. If there’s only a part that overlaps, it does nothing. This is to prevent falsifying your time records in case you chose to go to lunch earlier on a certain day.

What do the options “Ignore before events” and “Ignore after events” mean?

If you use one or both automated tracking methods (location and/or Wi-Fi) you can activate these checkboxes to suppress automatically-generated events from these tracking methods before a manually entered event and/or after a (manually or automatically enetered) event.

For example, if you leave your facility and TWT clocks you out when you leave the Wi-Fi area, but then (on your way to the parking lot) you come across another part where the same Wi-Fi is visible again, TWT will clock you in again (and out when you leave that area). Or you may have manually entered your clock-out event and afterwards TWT wants to clock you in/out again (because of the Wi-Fi on the way to the parking lot). In these cases, the options can prevent TWT from creating the superfluous events.

How do I jump to some week in the past (or future)?

If you want to go only a few weeks backwards or forwards, you can swipe the main table left or right. If you want to go farther, this may be cumbersome, then just tap on the week number in the upper left corner of the table. A calendar will be displayed, select a date and the data from that week will be displayed in the table.

When the table doesn’t show the current week, an icon is displayed in the upper right corner which you can use to get back.

How do I install the latest APK from Github?

Firstly, the APK files published on Github are identical to the packages you receive from Google Play store. So if you installed TWT through Google Play, you may use an APK from Github without losing compatibility – Google Play will update your app later when a newer version is published. You don’t have to install all the following version manually.

So, how to install? It’s relatively easy:

  1. Safety first! Create a backup of TWT’s data (see “How can I create a backup” below).
  2. On your mobile device, go to the page of the latest release (or an older release if you want) and download the file with its name ending in _release-signed.apk. This is the complete app in one file.
  3. Open the downloaded file, either from your browser’s download manager or from a file manager app. This will trigger the installation of the APK.
    • Android may require you to allow installation from “unsafe sources” (which only means “another source than the Play store” on Android). Allow that for now, you can safely disable it again after the installation.
  4. Done!

How can I create a backup, maybe for a restore on another device?

Good news first: TWT automatically creates a backup for you once a day (if you allowed access to a directory when the app asked you). But you can always manually trigger a backup via the menu item “Data Backup”.

When you manually backed up the app’s data, there will be a directory named twt_backup in the directory you chose when the app asked you, with three files in it: backup.events.csv, backup.preferences.csv and backup.targets.csv. All three files together comprise a backup of the app’s data.

If you allowed access, the app also generates a daily backup in the directory twt_automatic_backup which is located next to twt_backup.

When restoring, the app always uses the contents of the directory twt_backup. So if you want it to restore from an automatic backup, you have to copy the contents of twt_automatic_backup to the directory twt_backup manually, e.g. using the Files app, before starting the restore.

You can copy the directory trackworktime onto another device for additional safety – or even have a synchronisation app do it for you in specified intervals. More specifically (but without advertising it) you could use the app FolderSync (which is not open source, but free to use if you tolerate the ads) to create a synchronization, e.g. with a Nextcloud instance you host yourself. For this, first grant the necessary rights to the app, then create an account for your synchronization target (Nextcloud in this example), then add a folder pair (consisting of one folder locally on your device and one folder on the sync target) and finally configure the sync process (e.g. only upload files, keep files locally even when they are deleted remotely, automatically sync every 4 hours).

How can I send the logs to the developer?

Please be sure to execute the action you want to be logged directly before sending the logs. The app only sends the logs of the current day, so if you did something yesterday, it won’t show up in the logs!

There’s a “burger menu” in the left upper corner of the app. Tap it and scroll the menu up until you see “Send Logs”. Select it and confirm the action – a “Share” dialog will open. Please select your email app (e.g. “K-9 Mail”), TWT will create an email and prepopulate it. You may add some text in English or German as reference (e.g. on which action a problem occurred or which issue you have already opened for the problem). Then please send the email to android@zephyrsoft.org (which also should already be filled in).

You can also choose to first send the logs to yourself and inspect it, redact any information which you don’t want to share and then send it on to the developer’s email address. But even if you don’t do that, I will keep your data confidential and only use it to reproduce the problem.

My question is not answered here!

If you don’t find what you’re looking for in the general description of the app or in this FAQ, you’re welcome to drop me a line in English or German. My email address is provided here.