Geocoder"等待服务器的响应超时#34;

时间:2014-09-13 14:59:36

标签: java android

我正在尝试将纬度和经度转换为地址。当我使用WIFI时,我得到了正确的答案。但是当我尝试使用3G / LTE时,我遇到了错误:

  

等待服务器的响应超时。

我在调试模式下发现了这一点。但为什么?我使用相同的信息(Lat,Long)。我该如何解决?继承我的功能

public void convert_adresses (double lat , double lng) throws IOException
{
    addresses = geocoder.getFromLocation(lat, lng, 1);


    address = addresses.get(0).getAddressLine(0);
    city = addresses.get(0).getAddressLine(1);
    country = addresses.get(0).getAddressLine(2);

    txt_street.setText(address);
    txt_city.setText(city);
    txt_country.setText(country);

}

我称之为:

try {
            convert_adresses(latitude,longtitude);
        } catch (IOException e) {
            e.printStackTrace();
}

有人有想法吗?

3 个答案:

答案 0 :(得分:0)

我不确定GEOcoding ..问题可能是您的网络提供商...

尝试从设备中打开以下网址,然后检查您是否通过wifi连接了所需的输出

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA

答案 1 :(得分:0)

new Geocoder(context) - >您必须为上下文参数提供活动或使用Activity的基类。不要使用Context类实例。

答案 2 :(得分:0)

我不知道如何,但这可以解决问题 addresses = geocoder.getFromLocation(lat, lng, 2);