According to spec, the implementation should return null if read speed is not supported. They seem to do this, but some people on the Internet say that the iOS browser implemented the speed API, at least in watchPosition , see, for example. these pages .
From the spec, I also assume that you cannot reliably say if the null value means “No API Support” or “No GPS Support”. It can mean and.
In any case, I think that you better implement backups and a user-friendly notification that the device does not give you any information, rather than whitelisting / blacklisting ... based on what? UA strings are not everything, especially not that Android has alternative browsers (e.g. Firefox Mobile, Opera, ...).
source share