以下代码之前运行良好:
class RetreiveWeatherTask extends AsyncTask<Bundle, Void, WeatherData> {
private static final String TAG = "WeatherManager";
@Override
protected WeatherData doInBackground(Bundle... params) {
Utils.log(TAG, "start get weather");
WeatherData weatherData = new WeatherData();
Bundle b = new Bundle(params[0]);
double latitude = b.getDouble(REF_LAT);
double longtitude = b.getDouble(REF_LONG);
try
{
StringBuilder weatherBuilder = new StringBuilder();
//weatherBuilder.append("http://www.google.com/ig/api?hl=zh-cn&weather=,,,");
weatherBuilder.append("http://www.google.com/ig/api?hl=en-us&weather=,,,");
int la = (int) latitude * 1000000;
int lo = (int) longtitude * 1000000;
weatherBuilder.append(la);
weatherBuilder.append(",");
weatherBuilder.append(lo);
String weather = weatherBuilder.toString();
HttpGet hg = new HttpGet(weather);
// HttpGet hg = new
// HttpGet("http://www.google.com/ig/api?hl=zh-cn&weather=,,,39130000,117200000");
HttpClient hc = new DefaultHttpClient();
HttpResponse hr = hc.execute(hg);
String responseString = "";
if (hr.getStatusLine().getStatusCode() != HttpStatus.SC_OK)
{
Utils.logi("", "Location != HttpStatus.SC_OK");
return null;
}
responseString = EntityUtils.toString(hr.getEntity());
InputStream is = new ByteArrayInputStream(responseString.getBytes());
// URL url = new
// URL("http://www.google.com/ig/api?hl=zh-cn&weather=,,,39130000,117200000");
// InputStream is =url.openStream();
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document document = db.parse(is);
NodeList currList = (NodeList) document.getElementsByTagName("current_conditions");
NodeList currList2 = currList.item(0).getChildNodes();
weatherData.weather = new String(currList2.item(0).getAttributes().item(0).getNodeValue());
weatherData.curTemperature = new String(currList2.item(2).getAttributes().item(0).getNodeValue() + "℃");
weatherData.wind = new String(currList2.item(5).getAttributes().item(0).getNodeValue());
Utils.log(TAG, "Get weather = " + weatherData.weather);
if (isNeedIconFromNet)
{
weatherData.iconUrl = new String(currList2.item(4).getAttributes().item(0).getNodeValue());
String url = "http://www.google.com" + weatherData.iconUrl;
weatherData.icon = getBitmapByUrl(url);
}
}
catch (Exception e)
{
Utils.logi("", "Location get temp Exception e");
e.printStackTrace();
}
return weatherData;
}
但现在它返回 String: Unsupported API 。
请帮我。谷歌api关闭了吗?PS。我在中国。