Java 为什么谷歌地图Gocode在我的android设备上(而不是在浏览器上)返回零结果
我正在Android上做一个应用程序,我必须启动谷歌导航(使用经度和纬度)。我得到的只是一个地址(这里有一个例子:“***”)。从这里我必须得到坐标 因此,我使用谷歌地理编码,并从Java发出HTTP请求:Java 为什么谷歌地图Gocode在我的android设备上(而不是在浏览器上)返回零结果,java,android,google-maps,http,geocoding,Java,Android,Google Maps,Http,Geocoding,我正在Android上做一个应用程序,我必须启动谷歌导航(使用经度和纬度)。我得到的只是一个地址(这里有一个例子:“***”)。从这里我必须得到坐标 因此,我使用谷歌地理编码,并从Java发出HTTP请求: public class LocationInfo extends AsyncTask<String, Void, JSONObject> { @Override protected JSONObject doInBackground(String... adre
public class LocationInfo extends AsyncTask<String, Void, JSONObject> {
@Override
protected JSONObject doInBackground(String... adresse) {
HttpGet httpGet = new HttpGet(
"https://maps.googleapis.com/maps/api/geocode/json"
+ "?address=" + adresse
+ "&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) {
}
return jsonObject;
}
}
public类LocationInfo扩展异步任务{
@凌驾
受保护的JSONObject doInBackground(字符串…地址){
HttpGet HttpGet=新HttpGet(
"https://maps.googleapis.com/maps/api/geocode/json"
+“?地址=”+地址
+“&sensor=true”);
HttpClient=new DefaultHttpClient();
HttpResponse响应;
StringBuilder StringBuilder=新的StringBuilder();
试一试{
response=client.execute(httpGet);
HttpEntity=response.getEntity();
InputStream=entity.getContent();
int b;
而((b=stream.read())!=-1){
stringBuilder.append((char)b);
}
}捕获(客户端协议例外e){
}捕获(IOE异常){
}
JSONObject JSONObject=新的JSONObject();
试一试{
jsonObject=新的jsonObject(stringBuilder.toString());
}捕获(JSONException e){
}
返回jsonObject;
}
}
对于这个请求,我得到了结果ZERO\u result,但是当我尝试它时,我得到了一个正常的结果
它在我的设备上运行了几个小时,之后,我出现了这个问题。。。
有人有答案吗?
谢谢 ADRESE在这里不是一个字符串,而是一个vararg。您可能想在其中选择第一个字符串,因此请在此处使用
adrese[0]
。尝试使用专门为其设计的geocoder类this@Illegal争论问题仍然是一样的,没有回应。。。不过还是要谢谢你的回答!非常感谢。我看到它不是一个普通的字符串,但我没有进一步搜索…没问题:)如果您不熟悉varargs,这里是一个很好的例子