This demo is based upon Scott Ferguson's Stopwatch demo from a few years ago, which uses a simple concept of checking the stopwatch/counter time against the device time. I have modified it to run to the second instead of 1/10 second for the purposes of this demo.
What this provides is:
- A stopwatch - you simply press the StopWatch START and it will count the time until you press stop
- A Count Up - you select a time to count up to, press the Count Up START, and the timer will count up to the time set, then sound an alert
- A Count Down - you select a time to count down, press the CountDown START, and the timer will count down to the time set, then sound an alert
- The app also shows the current date and time. Only one clock/timer is used.
A few notes:
- It is a demo, it is not meant to be perfect, I am only human
- It is not intended to work in the background (AI2 has no background services). If you want to run it for longer than your device's display time, use a keep awake routine, or the KeepScreenOn block from Taifun's Tools Extension
- The blocks include an adjustment for Daylight Saving Time (DST) due to my locale. You may need to remove this or adjust accordingly.
- The use of the Format Time block, and the DST adjustment, mean that 23:59:59 will briefly flash when the timer gets going!
- You can't stop the count up or count down routines, but this is easily adjusted with the blocks (but the whole point of the count up /count down is that is what it is!)
The key element of the demo, which is really what it is all about, is this routine in the blocks:
You should be able to see how we get the time from the device clock, and check it against the time for the counter/timer. If there is a difference, then this is adjusted back/forward to the device time.