在执行Geocoder时返回null

问题描述:

我正在尝试使用Geocoder查找地址(位置)。在执行Geocoder时返回null

我有以下代码:

double lat = (double) (coord.getLat() * (1e-6)); 
double lon = (double) (coord.getLon() * (1e-6)); 
try { 
    List<Address> list = geocoder.getFromLocation(lat, lon,1); 

    if (list != null && list.size() > 0) { 
     Address address = list.get(0); 
     result = address.getAddressLine(0) + ", " 
      + address.getLocality(); 
    } 
System.out.println("adresa returnata folosind geocoder:" 
       + result); 
} 

,我传递给地理编码数据的格式如下:

2.449548 48.950518

但试图println()当返回的第一个地址地理编码器返回null。这是我的logcat的样子:

reverseGeocode()`:无功能在 GLocation

而且我System.out.println()显示:null。我有互联网访问和互联网permssion添加到我的清单文件。有人知道我在做什么错吗?

+0

你在哪里启动geocoder变量? – 2011-05-30 20:43:52

+0

你尝试过不同的坐标吗?你列出的那些在谷歌地图中显示为海洋,没有地址列在附近。 – Geobits 2011-05-30 20:45:56

+0

是的,我有一个KML的坐标被检索,然后传递给构造函数! – embry 2011-05-30 20:49:27

正如Geobits所说,你的坐标属于阿拉伯海的地方。你不能从那里得到一个地址,所以你的清单是空的,你的结果是空的。

+0

我想知道为什么你没有得到一个upvote和一个接受的答案呢? – Siddharth 2013-02-06 05:19:04