【发布时间】:2012-06-29 13:39:34
【问题描述】:
我已经构建了一个应用程序,它将用户输入的日期存储在一个数组中。现在我想在我的应用程序的背景上执行一些操作。在后台,我想要一个检查,将设备的当前日期与存储在数组中的数据进行比较。找到匹配项后,我想打开一个对话框。应用退出时是否可以在后台执行一些任务?
请帮我举个例子,我不知道这个话题。
【问题讨论】:
标签: android
我已经构建了一个应用程序,它将用户输入的日期存储在一个数组中。现在我想在我的应用程序的背景上执行一些操作。在后台,我想要一个检查,将设备的当前日期与存储在数组中的数据进行比较。找到匹配项后,我想打开一个对话框。应用退出时是否可以在后台执行一些任务?
请帮我举个例子,我不知道这个话题。
【问题讨论】:
标签: android
最好的解决方案是使用服务。 有关更多信息,您可以阅读文档:
http://developer.android.com/reference/android/app/Service.html
一个很好的教程是这样的:
【讨论】:
如果您只需要在某个日期弹出一个弹出窗口,则不需要服务(这只会耗尽电池并让用户感到不舒服),但您可以使用AlarmManager
你可以在这里找到很多例子AlarmManager Examples
【讨论】:
在 Android 1.x 中覆盖 onKeyDown() 或在 Android 2.x 中覆盖 onBackPressed() 以处理 Backpressed,您可以在应用退出时启动 IntentService 以在后台执行某些任务。
请参阅 android-fundamentals-intentservice-basics
http://mobile.tutsplus.com/tutorials/android/android-fundamentals-intentservice-basics/
Android - onBackPressed() not working
使用IntentSerice 在后台执行任务,因为正如docs 所说:
IntentService 是处理异步的服务的基类 按需请求(表示为意图)。客户端发送请求 通过 startService(Intent) 调用;服务根据需要启动, 使用工作线程依次处理每个 Intent,并自行停止 当它耗尽工作时。
【讨论】: