1

我有一个应用程序。当我按下音量降低按钮时,计数器正在增加。但我想在我的设备被锁定时做。

当我按下电源按钮时,计数器不工作。

if (event.getAction() == KeyEvent.ACTION_DOWN)
    {
        switch (event.getKeyCode()) 
        {
            case KeyEvent.KEYCODE_VOLUME_DOWN:

            counter=counter+1;
        }
    }
4

1 回答 1

1

MyAs在您问题的评论中提到,您可以使用服务。

或者,我想它也可以在 Activity 中使用唤醒锁来完成。在您的活动中获得部分唤醒锁。这样,CPU 不会进入睡眠状态,您的活动会继续运行。

获取唤醒锁:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My Wakelock");
wl.acquire();

释放唤醒锁:

  wl.release();

您可以在创建活动时获取唤醒锁,并在活动销毁时释放唤醒锁。

于 2013-11-13T15:57:10.180 回答