我在寻找有关此问题的最佳做法。AsyncTask与否?服务器同步活动
基本上,在进入主要活动之前,我有一个“启动”活动的应用程序。用户根本无法做任何事情,因为应用程序需要先通过抛出一些HTTP请求来与服务器同步。
最简单的路线是按顺序在UI线程上运行每个HTTP请求。这有什么特别的问题吗? (即处理Android框架通常会被阻止?,...)。我喜欢在第一个版本中实现这个功能,并在稍后使用下面列出的方法进行完善。
否则,从用户角度来看,最好是每个HTTP请求同时启动一个AsyncTask,并在启动下一个活动时在UI线程中同步。
干杯。 l_ingenu
IntentService的作业已排队。这并不总是可以接受的行为。 –
来自Android ICS的AsyncTask(4.0)AsyncTask也被序列化(排队),这会破坏你的逻辑。当应用程序处于后台并且用户更改方向/更改活动时,IntentService还允许您继续进行网络工作。在这里寻找更多有关AsyncTask回归的信息:http://commonsware.com/blog/2012/04/20/asynctask-threading-regression-confirmed.html – StErMi
AsyncTask序列化可以通过使用'executeOnExecutor()'来轻松解决。改变方向不是问题。 –