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