Android Geocoder *突然*没有返回街道地址,只有城市

时间:2014-10-29 03:42:55

标签: android google-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()来获取街道地址,但是考虑到它可能不会给我一个值。

1 个答案:

答案 0 :(得分:2)

这是由于Geocoder服务中的可靠性问题。 在我的单元测试中,经度/纬度坐标保持完全相同,并且有时只返回城市而不是完整地址。

不要依赖Geocoder服务来始终返回完整的地址!