繁体   English   中英

应用程序被杀死时后台TimerTask被杀死

[英]Background TimerTask gets killed when app is killed

我在我的应用程序上使用密码锁。 我使用此答案中的逻辑将共享首选项中的变量设置为true / false。 但是,当我仍然在前台(使用最新的应用程序)杀死该应用程序时,这种方法不起作用。 看起来像杀死该应用程序会杀死我的TimerTask,该任务计划运行2秒,因此该变量从未设置。

我曾尝试使用服务来做同样的事情,但是没有运气,即使应用程序被杀死,服务也被杀死。 任何解决方法? 请帮忙!!

您可以将Service与START_STICKY一起使用,该服务将在杀死后重新创建。 检查AlarmManager中是否有由系统启动的事件,即使您的应用程序已关闭。

我个人建议使用AlarmManager,而不要保留长期运行的服务。

有效执行后台任务的最佳方法是使用IntentService

http://developer.android.com/reference/android/app/IntentService.html

只要任务需要, IntentService将在单独的线程中运行,之后将被IntentService

它还将排队请求并处理队列本身

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM