android HttpGet 另开线程获取网络数据问题

publicclassGetNetData{//get形式publicstaticStringgetResultForHttpGet(Stringurl)throwsCl... public class GetNetData {

//get形式
public static String getResultForHttpGet(String url) throws ClientProtocolException, IOException
{
String result="";

HttpGet httpGet=new HttpGet(url);//
HttpResponse response=new DefaultHttpClient().execute(httpGet);
if(response.getStatusLine().getStatusCode()==200){
HttpEntity entity=response.getEntity();
result=EntityUtils.toString(entity, HTTP.UTF_8);
}
return result;
}

}

我在其它代码中调用GetNetData.getResultForHttpGet 来获取数据 但是网络不好的时候就会整个程序卡住 请问怎么办 在这个类中 我要怎么写才能让HttpGet 在其它线程中处理 并返回获取到的数据
展开
 我来答
匿名用户
推荐于2016-01-29
展开全部
简单点的话,用Thread+handler,另外可以考虑AsyncTask。以上这两种方法都要考虑android activity的生命周期,很有可能会导致memory leak。

推荐使用Loader实现AsyncTaskLoader
追问
我的程序老多地方都调用了 getResultForHttpGet
() 我要是想在不改变其它代码情况下,就在这个getResultForHttpGet
中把他变成多线程中处理然后返回 return result;
不影响其它代码的运行是不是很困难呀 我是个新手不好意思 能帮我改一下吗 如果不能实现也请告诉我 我也就研究研究其它地方谢谢了
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式