我正面臨一些奇怪的問題reverseGeocodeLocation
。這就是我所做的。reverseGeocodeLocation每次都不工作
我從一個view controller
推到另一個。出現視圖後,我要求獲取當前位置。在didUpdateLocations delegate
當我收到當前位置,我呼籲reverseGeocodeLocation
獲得地點標記值。
問題
- 在它就像魅力
- 有時它會等待並顯示出較長的時間間隔後的結果
- 有時,我沒有得到任何結果的時間。
下面是我的代碼來獲取反向地理位置
- (void)getReverseLocation
{
__block CLPlacemark* placemark;
CLGeocoder* geocoder = [CLGeocoder new];
[geocoder reverseGeocodeLocation:location completionHandler:^(NSArray *placemarks, NSError *error)
{
if(error)
NSLog(@">>>>>>>> Error in reverseGeoLocation - %@", [error localizedDescription]);
if (error == nil && [placemarks count] > 0)
{
placemark = [placemarks lastObject];
completionBlock(placemark);
}
}];
}
我不知道爲什麼它的行爲像這樣。我在相同的位置和互聯網連接是好的。
這是因爲線程?我也在主線上嘗試了這一點。但同樣的問題。
編輯:我得到這個錯誤,一些嘗試
錯誤reverseGeoCodeLocation後 - The operation couldn’t be completed. (kCLErrorDomain error 8.)
這是一個Web服務並具有速率和其他限制,請參閱Apple文檔。在錯誤檢查和打印錯誤,看看爲什麼。將錯誤信息添加到問題。同時顯示你的代碼,特別是completionHandler代碼。 – zaph
是的Zaph,剛剛看到了文檔。我認爲沒有選擇,而不是等待它得到結果。是否有其他解決方案來獲取它? – JiteshW
我想抓住錯誤。但它現在不出現。一旦我遇到它,我會分享它。 :) – JiteshW