Android应用程序转到后台时如何停止计时器

时间:2013-10-24 15:10:06

标签: android android-activity

我知道有很多问题,因为在stackoverflow中已经提到了这个问题。其中大多数建议实施onResumeonPause来控制应用在进入后台/前台时的行为方式。但在我的情况下,我实际上无法使用该方法。

我的应用程序启动时(或用户登录后)会运行timer。因此,它不依赖于我的应用中的任何activity。我想做的是当应用程序转到后台时停止timer(以节省电源)并在应用程序返回前台时重新启动它。通过实施onResumeonPause,当用户在timer之间切换(因为我在所有activities中实施)时,将停止并启动activities,这是不是我想要的。

请以更好的方式提供建议。

2 个答案:

答案 0 :(得分:0)

您可以在onPauso()中使用cancel()方法,这样当应用程序处于后台时,您可以停止使用timmer 在onResume()方法中,你可以在其他时间启动你的计时器。

你可以看到方法: http://developer.android.com/reference/java/util/Timer.html

答案 1 :(得分:0)

扩展Application类并在其上添加一个公共静态计数器。在每个onPause()OnResume()上,递增或递减它,当计数器为零时,您的app就在后台。