2011-04-04 101 views
2

我用MKReverseGeocoder在我的應用程序來獲取我的用戶是位於該州(AdministrativeArea),縣(SubAdministrativeArea)。MKReverseGeocoder沒有返回SubAdministrativeArea

我剛剛注意到,有沒有值(NULL)是返回SubAdministrativeArea。狀態正常。這在過去是正確的,我不確定它何時停止工作。我是從模擬器,3GS和iPad的無線網絡越來越1.相同的行爲我也有從誰是幾百英里遠(同一國家,不同縣)用戶的這一報告。

有沒有其他人經歷過這個?我還沒有發現任何其他類似的錯誤報告。

回答

0

我最近打了MKReverseGeocoder,並發現它有點不可靠。有時候,沒有返回街道號碼,並且在某些情況下SubAdministrativeArea也爲空。此外,在某些情況下,地點(城市)值爲空。

使用MKReverseGeocoder讓你依賴於數據源,這可能不是你期待什麼樣的。例如,在紐約玩過的時候,我注意到皇后有時候會回到地方(城市),而布魯克林則表現爲副行政區(縣)。

你可以很容易地在不同狀態下通過設置的MKMapView測試這種行爲,並嘗試不同的點,或者只是得到一個定義的一組來自不同國家/城市/國家的座標和測試應用程序運行它們。

您也可以嘗試直接使用Google Maps Geocoding API,因爲它會返回,而不是一個幾個結果。但是,這可能需要更多工作,因爲您需要手動進行解析。這是一個sample response

0

我遇到了完全一樣的問題,並採取了使用addressDictionary標屬性,例如,

[placemark.addressDictionary [email protected]"City"] 

,而不是

placemark.subAdministrativeArea