The app is a sports timer for cycling, skiing etc, where racers start at regular intervals. e.g. 1 minute.
In my implementation of OnChronometerTickListener I notice that the calls occur at intervals significantly longer than 1000 mS. I use the elapsed time (between the Tick and the Chronometer's base) to count down the last 5 seconds for each interval. Due to the late callback, I can get ticks at, say, 55,500 56,600 57,750 58,870 59,980 61,110
I can therefor skip a whole second when I use m_Elapsed % 1000. I have even seen the text in the Chronometer get behind and have to skip a second. I have no problem with accuracy when I do calculations based on the Chronometer's base time and current system time.
Do I have to write my own Chronometer using finer callbacks? Or is there some other fix?