Aircraft position

Hi,



I am using corelocation to get the current position of the aircraft in my app. A customer has complained about not getting a Lat/Long signal in my app, but he does get it on other apps.



I want to know what CLLocationAccuracy could be set to address this problem? or any other recommended settings that I can play with to get a Lat/Long signal always.

Replies

Could you explain better.


I am using corelocation to get the current position of the aircraft in my app.

Should show the code where you do it


A customer has complained about not getting a Lat/Long signal in my app, but he does get it on other apps.

There is no "signal" for Lat and Long, just information you extract from the last CLLocation

Not getting, you mean:

- never gets ? => have you requested authorization to locate ?

- sometimes does not get ? : during some priod of time , before a certain distance traveled , …


what CLLocationAccuracy could be set to address this problem?

What makes you think it is an accuracy issue ?

Sorry for not being clear. Let me try again.

Here is the code I am using.

-(void)viewDidLoad
{
   
    locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    locationManager.distanceFilter = kCLDistanceFilterNone;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;
    
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
        [locationManager requestAlwaysAuthorization];
    
    [locationManager startUpdatingLocation];
 
 }


 - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
    
    
    if(newLocation.coordinate.latitude==oldLocation.coordinate.latitude && newLocation.coordinate.longitude==oldLocation.coordinate.longitude)
        return;
    
        float lat = newLocation.latitude;
        float lon = newLocation.longitude;
        
        [self SetActualPositionTextFields:lat lon:lon];
  }


The above code works absolutely fine when on the ground (i.e. not in the aircraft). I know that GPS reception is poor inside the aircraft unless the device is near the windows. I need help regarding setting the values for desiredAccuracy, distanceFilter or any other property needed, so that I always get a GPS value when inside the aircraft.

Great question. Here are some concrete suggestions:
  1. Since you're interested in aircraft positioning, please set activityType airborne.

  2. Set AccuracyBest, as you are doing.

As a side note, commercial aircraft are (often) long metal tubes with poor GPS availability inside, and they travel much faster than ground transportation. Both of these make it very hard for the GPS receiver to acquire satellites. It may take much longer (minutes, in some cases) to produce a first location in these circumstances compared to the performance you expect on the ground while moving at normal speeds. In some cases, location may not be available at all.