我在我的应用中实施了AsyncTask
,遇到了IllegalArgumentException
等异常。我问堆栈溢出问题有人说我不应该在应用程序中使用AsyncTask
,原因如下。
我被推荐为Robospice并且还告诉我考虑这个帖子AsyncTask
is not really the best tool to create network requests on Android. use RoboSpace
有人能告诉我异步使用接入网络的最佳选择吗?我应该使用AsyncTask
或RoboSpice?
答案 0 :(得分:3)
根据this guy at Google IO,使用AsyncTask进行联网不是最佳选择。他可能会给他的演讲带来烦人的情绪。居高临下的语气,但仍然有一些好处。
IMO要使用的主要库是android-async-http和robospice。
免责声明:我还没有尝试过这两种方法。虽然我更喜欢android-async-http的API,但似乎Robospice最近开发并支持更好的库。
我最终可能会自己推广IntentService
。
答案 1 :(得分:1)
这是一个Android异步Http客户端库文件来完成这些工作。试一试。
答案 2 :(得分:0)
我一直在为一些项目使用AsyncTasks,从来没有遇到过这个问题。然而正如Snicolas在那篇文章中所说,如果你使用AsyncTasks进行长时间运行操作(请注意粗体),可能会出现问题。
因此,如果您正在进行短操作,请尝试使用AsyncTasks,否则我会尝试使用Robospice。
答案 3 :(得分:0)
一个asyncTask实例只能使用一次,如果要执行第二个请求必须再次调用new()
答案 4 :(得分:0)
我在所有应用程序中使用AsyncTask。没问题。
片段中的示例 http://pastebin.com/EDZtKy3M
CustomTask的自定义实现的示例基础 http://pastebin.com/F18hRXr6