Android应用程序无法在睡眠模式下运行

时间:2016-09-16 06:57:49

标签: java android

我有计时器的应用程序。当我按下电源按钮时,我的应用程序进入睡眠模式并停止计时器。我应该怎么做才能让计时器继续工作。在我非常简单的代码计时器下面。

Thread t = new Thread(){
    @Override
    public void run() {
        while (!isInterrupted()){
            try {
                Thread.sleep(1000);
                i++;
                Log.e("pokaz "," i "+i);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
};

2 个答案:

答案 0 :(得分:0)

我解决了我的问题。我在活动中编写了这段代码

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

和布局编写此代码

android:keepScreenOn="true"

但现在我的应用程序是在后台,版本API是kitkat evrything是好的。当我在API lolipop中测试我的应用程序并进入睡眠模式并接下来打开手机时,我看到消息“不幸的是myApp已停止”。为什么呢?

答案 1 :(得分:-1)

要在后台使用您的应用,您需要使用ServiceIntentServiceBroadCastReceiver

让你的主题在Service内完成。