我在我的应用上使用密码锁定。我使用this answer中的逻辑在共享首选项中将varibale设置为true / false。但是当我在前台(使用最近的应用程序)时杀死应用程序时,这种方法不起作用。看起来像杀死应用程序会杀死我的TimerTask,它被安排为2秒,因此变量永远不会被设置。
我已经尝试过使用服务来做同样但没有运气,甚至服务在应用程序被杀时被杀死。有什么解决方法吗?请帮忙!!
答案 0 :(得分:0)
您可以使用START_STICKY服务,该服务将在终止后重新创建。检查AlarmManager,查看系统即使您的应用已关闭也将启动的事件。
我个人建议使用AlarmManager,而不是保持长期运行的服务。
答案 1 :(得分:0)
以有效的方式执行后台任务的最佳方法是使用IntentService
http://developer.android.com/reference/android/app/IntentService.html
只要任务需要,IntentService
将在一个单独的线程中运行,之后将被杀死。
此外,它会将请求排队并处理队列本身