2012-04-12 51 views
1

我正面臨着一個奇怪的問題,試圖通過反向地理編碼獲取當前的城市,州和國家。國家和國家都很好,但城市是「零」。任何人都可以幫助我。當前城市爲零;

我使用下面的代碼:

- (void)reverseGeocoder:(MKReverseGeocoder*)geocoder didFindPlacemark:(MKPlacemark*)place 
{ 
    NSDictionary *addressDict = place.addressDictionary; 
    self.currentCity = [addressDict objectForKey:(NSString*)kABPersonAddressCityKey]; 
    self.currentState = [addressDict objectForKey:(NSString*)kABPersonAddressStateKey]; 
    self.currentCountry = place.country; 
    self.currentCountryCode = place.countryCode; 
} 
+1

'NSLog(「%@」,(NSString *)kABPersonAddressCityKey);'併發布結果。 – CodaFi 2012-04-12 20:37:43

+1

你的地方絕對是在某個城市嗎?也許反向地理編碼器不這麼認爲 - 例如,它是在海洋還是沙漠中?在下面,它只是去谷歌 - 檢查他們的反向地理編碼API直接與相同的位置。 – 2012-04-12 20:40:44

+0

感謝您的評論球員,@CodaFi我的鑰匙是適當的,因爲我使用相同類型的關鍵狀態和國家。 我得到的國家和國家,我認爲它應該給我目前的位置,並且這就是我目前的位置。 – Nilesh 2012-04-12 21:01:14

回答

2

它使用谷歌地圖,所以去這裏看看如何檢查直接

https://developers.google.com/maps/documentation/geocoding/#ReverseGeocoding

與位置的經/緯檢查:

http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=true

你有城市嗎?如果是這樣,我建議嘗試捕獲您的應用程序和反向地理編碼服務器之間的網絡流量。一個簡單的方法是安裝Wireshark,然後使用模擬器和自定義位置(在最新的模擬器中支持)。

相關問題