tags:

views:

268

answers:

1

I wrote an GPS enabled iPhone App that needs about 70m accuracy. In most cases this accuracy is reached after a few seconds waiting. But on some occasions it is never reached. Then I have to restart the iPhone and my app and the fix is acquired immediately.

Some users also told me that starting a different app that uses gps, close that app and starting my app again fixes the problem as well. But I am not so sure if that works, because I couldn't test it myself.

The problem only occurs on 3g iPhones not on the 3gs.

Any idea what is happening or how I can fix this in code, so that I don't have to reboot my iPhone?

edit: Code that I use:

locationManager = [[CLLocationManager alloc] init];
[locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.delegate = self;
[locationManager startUpdatingLocation];
A: 

I'm seeing the same behavior in my own GPS-centric app. The 3G tends to narrow in more slowly than the 3GS. All I can figure so far is that the 3G's GPS got improved for the 3GS.

Joseph Beckenbach
Your observation is right the 3GS is definitely better. But what I experience is that the 3G never acquires a fix even if I wait for hours. The only things that help are quitting the app, starting google maps and then restart my app or rebooting the device.
sliver