关闭 Android 事物

Powering off Android Things

通常,要关闭 Android 设备,您当然可以通过电源按钮执行此操作。

您还可以 adb shellreboot -p

但是在 Android Things 中,我没有看到关闭设备的方法。 如果没问题,我很乐意为此切断 Raspberry Pi 的电源,但这可以接受吗?它会损坏 SD 卡吗?

Android(推而广之,Android的东西)突然断电应该没有问题。核心操作系统位于文件系统的只读分区中,因此不存在因正在进行的写入失败而损坏 OS 的风险。

此外,如果您想在测试或开发中使用它,reboot -p 应该仍然有效。更进一步,您可以将 Gpio 与发出 KEYCODE_POWERInputDriver 连接起来,以便在您觉得需要时将您自己的电源按钮添加回系统。

我喜欢 Dave 的回答,只是想补充两点:

您可以通过多种方式以编程方式关闭 Android Things 设备,但每种方式都有一个附加警告,在此处讨论:Turn off device programmatically

要像您说的那样关闭 AndroidThings 设备,您可以通过 ADB 完成:

 adb shell reboot -p

(-p--poweroff 的缩写)

... 并以编程方式

用于关机

Runtime.getRuntime().exec("reboot -p");

正在重启

Runtime.getRuntime().exec("reboot");

Explanationreboot 二进制文件在 Android Things 图像中发布,具有世界可执行权限,即 rwxr-xr-x,这使得可以从 any 应用程序进程中执行。换句话说,应用程序进程不需要获得 su 与大多数股票 Android phones/tablets 相比,因此在 AndroidManifest.xml.[=37= 中不需要额外的权限。 ]

注意:如果安全模型在较新的 OS 版本中发生变化,此方法可能无效。