2014-10-29 100 views
0

我有一些簡單的代碼從經度/緯度座標返回一個地址。 昨天工作很好,沒有什麼變化,但今天它返回的是城市而不是街道地址。Android Geocoder *突然*不返回街道地址,只有城市

我知道我可以深入瞭解Address類並明確地調用getThoroughfare(),但那隻會返回null。

Geocoder geocoder = new Geocoder(MainActivity.this, Locale.getDefault()); 
try { 
    List<Address> addresses = geocoder.getFromLocation(lat, lon, 1); 
    return addresses.get(0).getAddressLine(0); 
} 

沒有仿真器的Nexus 5

更新:它的魔力,今天的地理編碼工作再罰款!請注意,經度/緯度座標在整個時間內保持完全相同。也許我會依靠getThroughfare()來獲取街道地址,但要說明它可能不會給我一個值。

+0

如果geocoder無法準確找到街道地址,它將僅返回城市。 – 2014-10-29 04:40:49

回答

2

這是由於Geocoder服務中的可靠性問題。 經度/緯度座標在我的單元測試中保持完全一樣,並且不時只有城市返回而不是完整的地址。

不要依賴Geocoder服務來始終返回完整的地址!

相關問題