我正在尝试使用 SAX Parser 通过谷歌天气获取当前温度,但是当我尝试获取数据时收到“权限被拒绝”异常消息:
代码:
/* 获取用户在 EditText 中输入的内容。*/
String cityParamString = ((EditText) findViewById(R.id.edit_input)).getText().toString();
String queryString = "http://www.google.com/ig/api?weather="+ cityParamString;
/* 将空白替换为 HTML 等效项。*/
url = new URL(queryString.replace(" ", "%20"));
/* 从 SAXParserFactory 获取 SAXParser。*/
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
/* 获取我们创建的 SAXParser 的 XMLReader。*/
XMLReader xr = sp.getXMLReader();
/* 创建一个新的 ContentHandler 并将其应用到 XML-Reader */
GoogleWeatherHandler gwh = new GoogleWeatherHandler();
xr.setContentHandler(gwh);
/* 解析我们的 URL 调用返回的 xml 数据。*/
xr.parse(new InputSource(url.openStream())); <---- 这与权限被拒绝的异常消息一起崩溃
url 似乎很好,但 url.openstream 不起作用。