Android getFromLocationName始终返回空地址
我有点困惑,我试图从一个地址中检索纬度/经度,我从以前的帖子中检索了一些代码,但是无论我在getFromLocationName方法中填写的地址是什么,我总是得到一个空字符串作为回报 以下是我正在使用的代码:Android getFromLocationName始终返回空地址,android,google-geocoder,Android,Google Geocoder,我有点困惑,我试图从一个地址中检索纬度/经度,我从以前的帖子中检索了一些代码,但是无论我在getFromLocationName方法中填写的地址是什么,我总是得到一个空字符串作为回报 以下是我正在使用的代码: public void onMapReady(GoogleMap map) { LatLng coord = getLocationFromAddress(getBaseContext(), fullAdr); 。。。。。 public LatLng getLocationF
public void onMapReady(GoogleMap map) {
LatLng coord = getLocationFromAddress(getBaseContext(), fullAdr);
。。。。。
public LatLng getLocationFromAddress(上下文,字符串)
{
地理编码器=新地理编码器(上下文);
名单地址;
LatLng p1=null;
尝试
{
如果(!coder.isPresent()){
Log.d(“JRE”,“没有地理编码器!”);
返回新板条(0,0);
}
地址=编码者。getFromLocationName(StradAddress,5);
如果(地址==null)
{
返回null;
}
地址位置=地址。获取(0);
location.getLatitude();
location.getLongitude();
p1=新车床(location.getLatitude(),location.getLongitude());
}
捕获(例外e)
{
e、 printStackTrace();
}
返回p1;
}
知道为什么我总是得到空值吗
谢谢。这里的“空字符串”是什么意思?您发布的代码返回一个LatLng。问题是没有返回地址对象吗?是的,是的,地址是空的,所以无法提取LatLng
public LatLng getLocationFromAddress(Context context, String strAddress)
{
Geocoder coder= new Geocoder(context);
List<Address> address;
LatLng p1 = null;
try
{
if(!coder.isPresent()) {
Log.d("JRE","There is no GeoCoder !");
return new LatLng(0,0);
}
address = coder.getFromLocationName(strAddress, 5);
if(address==null)
{
return null;
}
Address location = address.get(0);
location.getLatitude();
location.getLongitude();
p1 = new LatLng(location.getLatitude(), location.getLongitude());
}
catch (Exception e)
{
e.printStackTrace();
}
return p1;
}