我正在开发Android的倒数计时器应用程序。该应用程序可以显示剩余时间。即使电话被锁定或主要活动被破坏,它也必须工作。我想知道哪个以下应该使用,更重要的是,为什么我应该使用它(和为什么不是其他)。服务vs可运行vs AsyncTask
- 服务
- 可运行:静态参照Runnable对象。该引用在Activity类中声明。
- 的AsyncTask
我正在开发Android的倒数计时器应用程序。该应用程序可以显示剩余时间。即使电话被锁定或主要活动被破坏,它也必须工作。我想知道哪个以下应该使用,更重要的是,为什么我应该使用它(和为什么不是其他)。服务vs可运行vs AsyncTask
'处理程序mHandler'必须是静态的?恐怕当一个活动被破坏时,我不能访问处理程序。 – wannik
在我看来,如果你的应用需要能够在后台通知用户,我会用一个服务,所以如果你的应用程序已经被用户置于后台,当定时器准备就绪时,仍然可以通知用户,然后可以使用基于位置的事件时间等。
另一种选择呢?我想知道选择应用程序中的每个选项的专业和建议。 – wannik
AsyncTask只是一个从UI线程启动的新线程,它主要是为了检索数据并显示它,而不是等待这么久,但这将在应用程序启动时工作。一旦关闭,线程将退出。 –
Runnable只是一个代码,意味着要在后台线程上运行,所以同样的原则,如果你的应用程序放在后台将停止运行 –
服务在这种情况下最好,它会像你一样要求,甚至在米的时候继续跑步ain活动被破坏,并且不太可能被Android操作系统杀死。
AsyncTask和runnable都依赖于你的应用程序仍然处于活动状态,而一个服务独立运行,当它打开或重新启动以显示从服务传递的信息时,或者服务可以在它自己的,显示通知等等。
你能详细说明这个计时器应用程序应该做什么吗?它是否像秒表?一个闹钟? – kaspermoerch
您的计时器应用程序正在执行什么操作? –
http://stackoverflow.com/questions/4909634/service-handler-timer-runnable-which-to-use-and-how –