试图使Android设备进入睡眠状态,但PowerManager不包含“ goToSleep(long)方法”

问题描述

您可以使用DeviceAdministrator,但是需要用户向您授予这些权限。

解决方法

我试图把一个设备休眠,我发现引用各地有关使用电源管理器类的goToSleep(长)的方法,但我没有看到它在文档中,当我试图在我的代码中使用它,它不工作。

Android的文档不包含我可以看到的goToSleep方法。

我的代码:

 private void sleepDevice() {
    try {
        PowerManager powerMgr = (PowerManager) getSystemService(Context.POWER_SERVICE);
        long time = 1000;
        powerMgr.goToSleep(time);
    } catch (Exception ex) {
        updateStatus("Error attempting to reboot device.");
        updateStatus(ex.getLocalizedMessage());
    }
}

Android Studio不允许代码与以下消息一起编译:“无法解析方法’goToSleep(long)。

我什至不认为此方法已被弃用。另外,我也不必担心安全权限,该调用旨在在有根设备上运行,或者在无根设备上正常失败。

猜你在找的技术问答相关文章

如何检查配对的蓝牙设备是打印机还是扫描仪(Android)
是否允许实体正文进行HTTP DELETE请求?
如何将ZipInputStream转换为InputStream?
java.util.logging Java 8中的变量
PowerMockito.doReturn返回null
Java中的RESTful调用
Swing / Java:如何正确使用getText和setText字符串
特殊字符和重音字符
Android Studio中的ndk.dir错误
错误“找不到主类”