con.getInputStream()在Android项目中抛出异常,如何解决?
问题描述:
con.getInputStream()抛出异常,当android, 上运行代码但是将代码复制到常规java项目中时,它正在工作,
抛出的对象e包含“detailMessage = Permission denied”。 我的代码::con.getInputStream()在Android项目中抛出异常,如何解决?
public static HttpData get(String sUrl) {
HttpData ret = new HttpData();
String str;
StringBuffer buff = new StringBuffer();
try {
URL url = new URL(sUrl);
URLConnection con = url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
while ((str = in.readLine()) != null) {
buff.append(str);
}
ret.content = buff.toString();
//get headers
Map<String, List<String>> headers = con.getHeaderFields();
Set<Entry<String, List<String>>> hKeys = headers.entrySet();
for (Iterator<Entry<String, List<String>>> i = hKeys.iterator(); i.hasNext();) {
Entry<String, List<String>> m = i.next();
Log.w("HEADER_KEY", m.getKey() + "");
ret.headers.put(m.getKey(), m.getValue().toString());
if (m.getKey().equals("set-cookie"))
ret.cookies.put(m.getKey(), m.getValue().toString());
}
} catch (Exception e) {
Log.e("HttpRequest", e.toString());
}
return ret;
}
答
加入<uses-permission android:name="android.permission.INTERNET"/>
标签体现 将解决这个问题。 感谢杰姆斯评论。
答
确保您获得<uses-permission android:name="android.permission.INTERNET"/>
而不是<permission android:name="android.permission.INTERNET"/>
!那位我一个小时......
你为什么不给我们抛出异常? – aioobe 2011-01-29 13:10:51