34

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

你也可以做adb shellreboot -p

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

4

3 回答 3

25

Android(以及扩展,Android Things)应该没有突然断电的问题。核心操作系统位于文件系统的只读分区中,因此不存在因运行中写入失败而损坏操作系统的风险。

此外,reboot -p如果您想在测试或开发中使用它,它仍然可以工作。更进一步,如果你觉得你需要它,你可以连接一个Gpio与一个InputDriver发射KEYCODE_POWER的电源按钮,将你自己的电源按钮添加回系统。

于 2017-01-06T20:56:55.200 回答
25

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

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

要像您所说的那样关闭 AndroidThings 设备,您可以通过 ADB 进行操作:

 adb shell reboot -p

-p简称--poweroff

于 2017-01-06T21:03:19.127 回答
11

...并以编程方式

用于关机

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

重新启动

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

Explanation:reboot二进制文件在 Android Things 映像中提供,具有全局可执行权限,即rwxr-xr-x,这使得它可以在任何应用程序进程中执行。换句话说,su与大多数现有的 Android 手机/平板电脑相比,应用程序进程不需要获得额外的权限,因此在AndroidManifest.xml.

注意:如果在较新的操作系统版本中更改安全模型,此方法可能不起作用。

于 2017-05-26T20:29:52.443 回答