当前位置: 首页 > 面试题库 >

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

林和畅
2023-03-14
问题内容

我试图把一个设备休眠,我发现引用各地有关使用电源管理器类的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)。

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


问题答案:

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



 类似资料:
  • 问题内容: 我想让系统进入睡眠或hibernate状态,这是两种不同的选择。 我将如何使用API​​进行此操作,我真的不想使用Process,并且这不允许我选择执行此操作所需的方法。 问题答案: 或者,如果您喜欢系统调用:

  • 问题内容: 这会使当前的UI线程休眠吗? 问题答案: 如果要在ui线程上调用sleep,它将阻塞ui线程。不要在ui线程上调用sleep。您不应该阻止ui线程。 http://developer.android.com/reference/java/lang/Thread.html http://docs.oracle.com/javase/tutorial/essential/concurren

  • 问题内容: 我有产生新线程的执行主线程。在main()的执行主线程中,我正在调用。何时获得 未处理的异常 类型? 我不确定为什么会得到这个。我以为这是因为我需要对主线程的引用,所以我继续并通过进行了引用。 这不是让线程休眠的方法吗?我需要做的是让主线程等待/睡眠/延迟,直到它再次需要工作为止。 问题答案: 您看到的是编译错误,原因是您没有正确处理检查的异常(在这种情况下)。处理意味着执行以下操作之

  • 问题内容: 有没有让goroutine永远睡眠的API ? 换句话说,我希望我的项目始终运行,除非停止它。 问题答案: “睡眠” 您可以使用许多永久阻塞的构造,而不会“吃掉” CPU。 例如,不带任何(且不带)的a: 或从没有人发送任何东西的渠道接收: 或从频道接收也会永远阻止: 或在频道上发送也会永远被阻止: 或锁定已经锁定的: 戒烟 如果您确实想提供一种退出方法,则可以通过一个简单的渠道来完成

  • Heroku WORKER Dyno(在python环境中运行)在30分钟后进入睡眠状态。工作人员执行芹菜期任务计划,向用户发送电子邮件。 下面是显示实际行为的日志: 根据研究,我的理解是dyno进入睡眠状态,但是dyno不会睡眠。https://devcenter.heroku.com/articles/free-dyno-hours: 如果一个应用程序有一个免费的网络dyno,并且dyno在3

  • 问题内容: 我正在尝试以10秒的延迟发送电子邮件。我写了这段代码: 服务器端代码(php)获取ID并从数据库中选择具有指定ID的电子邮件 然后发送电子邮件,并发回当前电子邮件 但是,这里有些问题。似乎js函数等待5秒钟,然后立即显示所有20个电子邮件地址。 你能告诉我我做错了什么吗?任何“睡眠”的解决方法将不胜感激:) 问题答案: 您应该创建一个在5秒钟后调用自身的函数