I am developing a GPS tracker and it works like a charm. But a couple of weeks ago, a client of mine (a caterpillar company) bought a Samsung Galaxy S3 for its drivers. And since then we have had really strange behavior in my application.
The application receives location updates from the GPS receiver, but after several hours of operation, it does not receive any location updates.
I registered the application for onGpsStatusChanged() too, and onGpsStatusChanged() was called during this time (I see that the GPS receiver has 10-17 satellites!), But the onLocationChanged() method was not called! After restarting the service (= re-registering LocationListener ), it works again. This is really weird. After a few hours of operation, the GPS receiver does not seem to be in the mood for calling onLocationChanged() :)
Any idea what could be wrong?
@matekm: The log is as follows:
onLocationChanged () <- new location
onGpsStatusChanged () (GPS started / stopped / GPS_EVENT_SATELLITE_STATUS, etc.)
...
onLocationChanged () <- new location
onGpsStatusChanged () (GPS started / stopped / GPS_EVENT_SATELLITE_STATUS, etc.)
...
onLocationChanged ()
<<<<<- from here, no location is updated anymore and no other GPS event status other than GPS_EVENT_SATELLITE_STATUS!
onGpsStatusChanged () GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 onGpsStatusChanged () GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 onGpsStatusChanged () GPS_EVENT_SATELLITE_STATUS numOfSatellites = 16 onGpsStatusChanged () GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 onGpsStatusChanged () GPS_EVENT_SATELLITE_STATUS numOfSatellites = 17 onGpsStatusChanged () GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 ...
source share