Examining and improving the timekeeping accuracy of Android
LE3 .A278 2020
Bachelor of Computer Science
This thesis investigates timekeeping on Android phones, including how well or poorly Android does on timekeeping, and whether there is any method to improve Android’s timekeeping. The Android system primarily uses two approaches, NITZ and SNTP, to synchronize its system clock to UTC. This thesis explains how these two approaches work, and (by analyzing the Android source code) how Android uses them to synchronize its time with UTC. In order to find out the level of accuracy that NITZ and SNTP can deliver on Android phones, experiments were done on several Android phones to examine how the estimated clock difference between the phone and a laptop running ntpd changes over time. This thesis also discusses three possible methods to achieve better timekeeping on Android: installing clock synchronization application, modifying the Android source code, and installing custom ROMs.
The author retains copyright in this thesis. Any substantial copying or any other actions that exceed fair dealing or other exceptions in the Copyright Act require the permission of the author.