【问题标题】:Timer stops every time the phone sleeps每次手机休眠时定时器都会停止
【发布时间】:2014-09-01 09:35:20
【问题描述】:

我正在创建这个非常简单的应用程序,因为我刚刚开始使用 Android,而且我从来没有使用过 Java 的经验。无论如何,我只有一个计时器和一个按钮。显然,该按钮启动计时器,该计时器从 60(1 分钟)开始倒计时,然后在完成时振动。一切都很好,直到我决定按下锁屏按钮让手机进入睡眠状态。我发现我的应用程序中的计时器停止运行,直到我解锁手机。如果我将自动睡眠时间设置为小于 60 秒并且手机自行进入睡眠状态,也会发生这种情况。我的问题是 - 即使屏幕不活动,我怎样才能让计时器运行?

【问题讨论】:

    标签: android timer


    【解决方案1】:

    您需要使用BroadCastRecievers 进行系统调用。 (Related Helpful question)

    您还可以使用PowerManager 来播放Activitylife-cyles


    使用PowerManager的示例:

    @Override
    protected void onPause()
    {
        super.onPause();
    
        // If the screen is off then the device has been locked
        PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
        boolean isScreenOn = powerManager.isScreenOn();
    
        if (!isScreenOn) {
            // The screen has been locked
            // Continue your timer
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2012-08-23
      • 1970-01-01
      • 2012-03-14
      • 2020-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多