打开/关闭安卓设备

11

我想实现一些代码行,使Android手机可以像我们使用电源按钮快速开关设备一样打开/关闭屏幕。是否有任何方法可以做到这一点?


你想锁定设备还是关闭它? - cjds
我想要的是召回锁屏显示。在关闭屏幕后 -> 打开它 -> 锁屏将会显示。你有什么建议吗? - Nguyen
如果您遇到运行时错误,我已经发布了一个解决方案。 - cjds
3个回答

2
似乎您想锁定设备而不是关闭它。要锁定设备,只需使用简单的代码即可。在此提到了此处
它使用设备策略管理器lockNow()方法。
如果出现运行时错误,请使用此问题中描述的方法设置权限。 Android DevicePolicyManager lockNow() http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html 要关闭设备:
这是不可能的,但您可以使用PowerManager重新启动它。 http://developer.android.com/reference/android/os/PowerManager.html#reboot 请注意,这需要重启权限,操作系统可能会取消它。

我正在开发 Android 框架,因此应用和框架之间可能存在一些差异。它仍然无法正常工作。无论如何,感谢您的回复。 - Nguyen

2

调用lockNow()后,它抛出异常:E/AndroidRuntime(1159):***系统进程中的致命异常:WindowManagerPolicy E/AndroidRuntime(1159):java.lang.NullPointerException - Nguyen
之后,设备被强制重新启动。 - Nguyen

0

是的,您可以使用以下代码进行编程, 注意:此解决方案仅适用于已root的设备

关机:

try {
    Process proc = Runtime.getRuntime()
                    .exec(new String[]{ "su", "-c", "reboot -p" });
    proc.waitFor();
} catch (Exception ex) {
    ex.printStackTrace();
}

重新启动:

相同的代码,只需使用"reboot"而不是"reboot -p"


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接