我知道每一个的利弊。
我目前正在开发RSS提要列表,为此使用asynctask。
我遇到了一位建议我使用服务的Android开发人员,因为如果应用程序在后台,asyntask就会停止。
但后来我才意识到RSS源的更新并不重要,因此为什么我会通过运行服务来降低用户的速度?
我知道预定的工作也可能对设备性能有所帮助,但再次更新RSS真的很重要吗?
注意:内容的重要性无关紧要。我只是试着理解我是否忘记了一些可以证明服务合理性的基本实践。
底线:当涉及相对重要性的任务(例如更新RSS源)时,运行可能会降低设备速度的服务是否值得? 我们不能只使用asynctask并承认如果应用程序放在后台并不重要吗?
答案 0 :(得分:0)
就实践而言,除了使用AsyncTask或服务之外,您似乎没有任何其他选择。但是,让我们从另一个角度来看待它,而不是手头的RSS源的重要性。与您的设备可用带宽相比,传输的数据量可能较低。因此,在您的AsyncTask可以更新RSS源之前,应用程序进入后台的概率可能太小。您还可以在onResume()中启动AsynTask,以确保每当您的应用程序到达前台时,您的数据都是最新的,然后在前台时定期检查RSS feed的更新。 很抱歉很长的帖子,但我说的是,最后您应该使用的资源量取决于您彻底研究您的域名和确切的用例。