CLGeocoder "Lost connection to geod" #error# when use geocodeAddressString:completionHandler

I got this warning when I tried to get destination using CLGeoCoder and the warning is coming out from this method

-(void)geocodeAddressString:(NSString*)addressStringcompletionHandler:(CLGeocodeCompletionHandler)completionHandler; 

when will this issue come out?I will tell you the my experience:

In my app,when I set the CLGeocoder as a @property,or set like this,

CLGeocoder*_geocoder;

when I set app in the background for a moment or a long time, double click home button,select from the background dock,instead of the selecting from the menu screen directly, this warning will come out!!! Xcode will log this warning ,and the method will be not available: im getting this issue when am only getting the position on the map.

GEOResourceManifestServerRemoteProxy:Lostconnectiontogeod

so I try to do this:

CLGeocoder*_geocoder

ever time when I use it ,I will init CLGeocoder,like this:

    if(!_geocoder){

    _geocoder=[[CLGeocoderalloc]init];

}

 

if(_geocoder.geocoding)[_geocodercancelGeocode];

    [_geocoderreverseGeocodeLocation:locompletionHandler:^(NSArray*placemarks,NSError*error){

    if(devMode){

        NSLog(@"Found placemarks: %@, error: %@",placemarks,error);

    }

 

    if(error==nil&&[placemarkscount]>0){

        // MY CODE - here placemarks is always (null)

    }else{

        if(devMode)

            NSLog(@"%@",error.debugDescription);

    }

}];

this log

GEOResourceManifestServerRemoteProxy:Lostconnectiontogeod

will also apear when you double click home button,select from the background dock,instead of the selecting from the menu screen directly, ,but the method "geocodeAddressString:completionHandler" will be available.

for more information turn to

http://stackoverflow.com/questions/22512566/clgeocoder-reverse-geocoding-fails-with-error-domain-nsurlerrordomain-code-1000

 

原文地址:https://www.cnblogs.com/ChenYilong/p/4080958.html