开发者社区> 问答> 正文

在Android中进行异步HTTP请求是否有公认的最佳实践?

我看过很多例子,它们似乎都以不同的方式解决了这个问题。基本上,我只是想以最简单的方式发出不会锁定主线程并且可以取消的请求。

这也无济于事,我们至少有2个HTTP库可供选择,它们分别是java.net。(例如HttpURLConnection)和org.apache.http。

最佳做法是什么?

展开
收起
Puppet 2020-01-19 11:42:06 489 0
1 条回答
写回答
取消 提交回答
  • 实际上,在AsyncTasks的设计中存在一些缺陷,使它无法真正用于网络。一个简单的例子是,只需旋转设备,即可松开AsyncTask和Activity之间的链接。

    看一下这个线程:您将看到AsyncTask也很容易造成内存泄漏。

    AsyncTask文档对此很明确:AsyncTask仅应用于短期任务,而且显然,网络不属于该类别。

    所以,我真的建议您看看RoboSpice。该库是为异步网络设计的,它是实现它的一种非常可靠的方法。如果只有几秒钟可以说服,请查看此信息图表。

    RoboSpice还是商店中的演示应用程序:RoboSpice Motivations,将深入介绍有关Android上异步网络的所有内容。

    2020-01-19 11:42:20
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
CDN助力企业网站进入HTTPS时代 立即下载
Android组件化实现 立即下载