Saturday, July 9, 2011

[android-developers] Honeycomb and Gingerbread update introduced weird GPS behavior

Hi,

I have a problem with an app using the LocationManager, to get location fixes via GPS on a user defined interval. I'm originally tested the app on 2 devices (Galaxy S running Eclair, and Asus Transformer tablet running Honeycomb 3.0.1).

After I updated the Galaxy S) from Eclair to Gingerbread and the Asus Transformer tablet from Android 3.0 to Android 3.1, I noticed that my GPS was not working properly anymore. 
On both devices, it can now take several minutes (up to half an hour) to get a location fix.
Before the upgrade, both devices were working fine before, and I never saw this behavior.

The app that I'm testing uses the LocationManager to request location updates on a user-defined interval. 
I see the GPS icon blinking, but it doesn't get a fix. When I open other apps (Google Maps, Navigation, GPS Status.....) it also takes a really long time to get a fix.
Sometimes it does get regular fixes, but sometimes, it can take half an hour.

Is it possible that my app can somehow be responsible for causing the GPS to get a lousy fix  (and also impacting other apps) ? 
The only thing I noticed on the app is that in a particular corner case, multiple threads can requestLocationUpdates from the locationManager.
This is currently marked as a bug (as it should do these calls sequentially, but I was just wondering if doing these calls multi-threaded can explain the bad GPS fixes, and if doing these calls can result in other apps having GPS issues as well.

Regards,
Davy

--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

No comments:

Post a Comment