che*_*ave 12 android frameworks android-asynctask
对于我的应用程序,我为外部API的所有网络调用创建了一个框架.我把一切都放在"服务",如:UserService,MessageService等等.所以现在当我想打电话给网络的方法,我不能在我的UI线程做到这一点Activity,所以我做了AsyncTask,一切都只是罚款=)
但是现在我想要让方法执行,AsyncTask所以我不需要AsyncTask为我的网络框架的每个方法编写一个.所以不要有这样的东西:
public class NetworkTask extends AsyncTask<UserService, Void, Void> {
@Override
protected Void doInBackground(UserService... params) {
UserService userService = params[0];
userService.getUser();
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
我想要一些更"抽象"的东西,所以AsyncTask不需要知道"getUser"方法?但我无法找到如何做到这一点......也许AsyncTask对此无益?
有很多AsyncTask替代品:
和加上针 - Android的多线程库
小智 5
请记住,Android 对线程和异步任务有限制。
您可以使用 2 个库来完成 AsyncTasks 的相同工作:
排球-> http://www.androidhive.info/2014/05/android-working-with-volley-library-1/
LoopJ -> http://loopj.com/android-async-http/
更新:
我真的推荐Retrofit 2。http: //square.github.io/retrofit/