Android Geocoder getFromLocationName始终返回null

Android Geocoder getFromLocationName始终返回null,第1张

Android Geocoder getFromLocationName始终返回null

Geoprer并不总是返回值。您可以尝试在for循环中发送3次请求。我应该至少可以返回一次。如果不是这样,则可能是连接问题,也可能是其他问题,例如服务器不回复您的请求。尝试看看这些线程:

Geoprer并不总是返回值,而geoprer.getFromLocationName仅返回null

更新:

我也有一个while循环,但是我曾经尝试最多10次。有时,即使连接到互联网,它也从不返回任何内容。然后,我使用这种可靠得多的方法来每次获取地址:

public JSonObject getLocationInfo() {        HttpGet httpGet = new HttpGet("http://maps.google.com/maps/api/geopre/json?latlng="+lat+","+lng+"&sensor=true");        HttpClient client = new DefaultHttpClient();        HttpResponse response;        StringBuilder stringBuilder = new StringBuilder();        try { response = client.execute(httpGet); HttpEntity entity = response.getEntity(); InputStream stream = entity.getContent(); int b; while ((b = stream.read()) != -1) {     stringBuilder.append((char) b); }        } catch (ClientProtocolException e) { } catch (IOException e) {        }        JSonObject jsonObject = new JSonObject();        try { jsonObject = new JSonObject(stringBuilder.toString());        } catch (JSonException e) { e.printStackTrace();        }        return jsonObject;    }

我这样称呼它:

JSonObject ret = getLocationInfo(); JSonObject location;String location_string;try {    location = ret.getJSonArray("results").getJSonObject(0);    location_string = location.getString("formatted_address");    Log.d("test", "formattted address:" + location_string);} catch (JSonException e1) {    e1.printStackTrace();}

希望这可以帮助。我也厌倦了依赖地理编码器。这对我有用。如果用经纬度坐标替换URL,并在Web浏览器中看到返回的JSON对象。您会看到刚刚发生的事情。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5477997.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存