【问题标题】:Genymotion - Get Address from Longitude und LatitudeGenymotion - 从经度和纬度获取地址
【发布时间】:2014-05-11 15:29:44
【问题描述】:

我使用此代码来获取我当前的地址:

public String getAdressFromLongLat(double lati, double longi) {
    List<Address> addresses = new ArrayList<Address>();
    Geocoder geocoder = new Geocoder(mContext,Locale.getDefault());

    try {
        addresses = geocoder.getFromLocation(lati, longi, 1);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        return null;
    }
    if(addresses==null || addresses.size()<=0) {
        return null;
    }
    String address = addresses.get(0).getAddressLine(0);
    String city = addresses.get(0).getAddressLine(1);
    return address + "/;/" + city;
}

但它每次都返回 null。我没有真正的设备,所以我在 genymotion 模拟器中进行测试。这是问题吗?还是代码有问题?

-> 我用调试器发现了问题: 地址不为空,但大小为0,为什么? :(

【问题讨论】:

    标签: android google-geocoder genymotion


    【解决方案1】:

    Genymotion 可能不支持地址查找。来自official documentation:

    注意:地址查找需要不包含在内的后端服务 在核心 Android 框架中。如果没有这个后端服务 可用,Geocoder.getFromLocation() 返回一个空列表。这 辅助方法 isPresent(),在 API 级别 9 及更高版本中可用,检查 查看后端服务是否可用。

    请尝试致电Geocoder.isPresent() 确定。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-02
      • 1970-01-01
      • 2017-10-19
      • 1970-01-01
      • 1970-01-01
      • 2013-07-04
      • 1970-01-01
      相关资源
      最近更新 更多