I have an app that uses GPS to display the time to start a race. It has to be right on what is displayed on most any GPS device (Garmin etc). I use an external GPS bluetooth module and an app to interface to the Android system to replace the internal GPS. The problem is that some apps (Bluetooth GPS) serve the corrected time (real time) and some apps (Bluetooth GPS Provider) do not correct for the 16 leap seconds that have accumulated since GPS was launched.
It would be trivial for me to add the 16 seconds if I knew which app was serving the data. I guess I could write my own bluetooth interface but so much easier if I just knew which one a user is using.
I contacted the developer of Bluetooth GPS Provider and he changed his app to use GPS time. Problem solved