I am trying to use the GeoLocation Service - I have set the request parameters as follows :-
maximumAge: 60000
timeout: 5000
enableHighAccuracy: true
watchPosition: true
If you invoke the service indoors (no satellites available) or with the GPS function on the device switched off you never receive the error event which should arrive after 'timeout' has expired.
If you use :-
navigator.geolocation.watchPosition(onSuccess, onError,{ maximumAge: 60000, timeout: 5000, enableHighAccuracy: true });
then you get the appropriate error raised.