返回空地址的Android地理编码器

返回空地址的Android地理编码器,android,geocoding,Android,Geocoding,我正在尝试从地理编码器获取位置地址,我能够获取纬度和经度,但它返回的地址长度为零 这是我的代码片段 double longi = location.getLongitude(); double latt = location.getLatitude(); Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.ENGLISH);

我正在尝试从地理编码器获取位置地址,我能够获取纬度和经度,但它返回的地址长度为零

这是我的代码片段

            double longi = location.getLongitude();
            double latt = location.getLatitude();

            Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.ENGLISH);

            String add="";
            try {


                List<Address> address = geocoder.getFromLocation(latt/1E6,longi/1E6, 1);


                System.out.println("in location listener "+address.size());


                int i=0;

                if(address.size()>0)
                {
                    for(i=0;i<address.get(0).getMaxAddressLineIndex();i++)
                    {
                        add += address.get(0).getAddressLine(i);
                    }


                    Toast toast  = new Toast(getApplicationContext());
                    toast.makeText(getApplicationContext(), add, Toast.LENGTH_LONG).show();
                }   

            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
double longi=location.getLongitude();
double latt=location.getLatitude();
Geocoder Geocoder=新的Geocoder(getApplicationContext(),Locale.ENGLISH);
字符串add=“”;
试一试{
列表地址=地理编码器。getFromLocation(latt/1E6,longi/1E6,1);
System.out.println(“in-location listener”+address.size());
int i=0;
if(address.size()>0)
{

对于(i=0;i),如果平台中没有后端服务,Geocoder查询方法将返回空列表。使用isPresent()方法确定是否存在Geocoder实现


有关更多信息,请参阅。

我认为您的项目没有针对正确的AVD。要使用地理定位,您必须指出一个实现google API的AVD。一旦您更改了它,一切都会正常工作


我对地理编码器API从未有过愉快的体验。但这是你最好的选择。我尝试了使用不同地址的
getFromLocationName()
。对于某些地址,我得到了结果,但对于某些地址,我得到了大小为0的数组。我已经在检查地理编码器。isPresent()这个静态函数返回true,但我得到的地址列表是空的