Android 反向地理编码问题

Android 反向地理编码问题,android,geocode,Android,Geocode,我下面的代码没有给出任何结果 list_addr = gc.getFromLocation(latitude, longitude, 5); 甚至不返回null值 它的行为像哑巴 给我一个解决方案。试试这个 List<Address> addresses = new Geocoder(MyActivity.this,Locale.getDefault()).getFromLocation(latitude, longitude, 1); List addresses=new G

我下面的代码没有给出任何结果

list_addr = gc.getFromLocation(latitude, longitude, 5); 
甚至不返回
null

它的行为像哑巴

给我一个解决方案。

试试这个

List<Address> addresses = new Geocoder(MyActivity.this,Locale.getDefault()).getFromLocation(latitude, longitude, 1);
List addresses=new Geocoder(MyActivity.this,Locale.getDefault()).getFromLocation(纬度,经度,1);
返回结果(即使结果为null)或引发异常

您是否在代码中的某个地方静默地捕获一般异常

更新:

使用此代码,然后检查logcat。它应该给你一个这样做不起作用的原因:

    Geocoder gc = new Geocoder(getApplicationContext(), Locale.getDefault());
    try {
        List<Address> list_addr = gc.getFromLocation(40.0d, 10.0d, 5);
    } catch (IllegalArgumentException iae) {
        Log.e("Geocoder IllegalArgumentException exception: ", iae.getMessage());
    } catch (IOException ioe) {
        Log.e("Geocoder IOException exception: ", ioe.getMessage());
    }
Geocoder gc=new Geocoder(getApplicationContext(),Locale.getDefault());
试一试{

列表

它返回什么?纬度和经度是什么值?纬度=Double.parseDouble(纬度\u edtext.getText().toString());经度=Double.parseDouble(经度\u edtext.getText().toString());当捕获异常时,您会做什么?默默地忽略它?javadoc说:“如果平台中没有后端服务,Geocoder查询方法将返回一个空列表。”此外,Geocoder需要internet访问。您请求权限了吗?@peter:是的,我在menifest文件中请求了权限。我输入了23.03957和72.56600