2

我来这里是因为我创建了一个 android 应用程序,它使用 .lockNow() 关闭屏幕(通过锁定它)。

这是我的代码:

btnToSleep.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            time = Integer.parseInt(timeBeforeSleep.getText().toString());

            m_handlerTask = new Runnable(){
                @Override
                public void run() {
                    if(time > 0){
                        Log.i("timeleft",""+time);
                        time--;
                    }else{
                        m_handler.removeCallbacks(m_handlerTask); // cancel run
                        dpm.lockNow();

                        MainActivity.this.finish();
                    }
                    m_handler.postDelayed(m_handlerTask, 1000);
                }
            };
            m_handlerTask.run();
        }
    });

这项工作,但之后我无法解锁我的手机:(。如果你知道解决它的方法,我会很高兴:D。提前致谢。

4

1 回答 1

0

您可能想研究使用 PowerManager 来告诉您的设备进入睡眠状态。它应该与按电源按钮关闭屏幕的效果相同。

http://developer.android.com/reference/android/os/PowerManager.html#goToSleep(long)

您需要添加 DEVICE_POWER 权限才能使用它。

如果您希望应用程序能够实际启用锁定屏幕,我相信必须通过设备管理来完成

于 2014-03-23T10:03:16.983 回答