public InputStream getInputStream() {
AndroidHttpClient client = AndroidHttpClient.newInstance(USERAGENT);
HttpUriRequest request = new HttpGet(url);
InputStream in = null;
try {
HttpResponse response = client.execute(request);
in = response.getEntity().getContent();
return in;
} catch (IOException e) {
e.printStackTrace();
} finally {
client.close();
}
}我将this方法放在一个Util类中。但是当在另一个类中调用getInputStream()时,我无法获得InputSteam,因为AndroidHttpClient是关闭的。如果我不关闭AndroidHttpClient,就会出现“发现泄漏,创建了AndroidHttpClient,但从未关闭”。如何在这种情况下获取内容
发布于 2012-02-22 19:50:53
例如,像这样:
public InputStream getInputStream() {
AndroidHttpClient client = AndroidHttpClient.newInstance(USERAGENT);
HttpUriRequest request = new HttpGet(url);
InputStream in = null;
try {
HttpResponse response = client.execute(request);
return new ByteArrayInputStream(new EntityUtils.toByteArray(response.getEntity()));
} catch (IOException e) {
e.printStackTrace();
} finally {
client.close();
}
}发布于 2015-03-08 16:01:21
检查您是否已在清单文件上启用INTERNET权限。
<uses-permission android:name="android.permission.INTERNET"/> 在您的Androidmanifest.xml中包含以上代码行
https://stackoverflow.com/questions/9393426
复制相似问题