通常,要关闭 Android 设备,当然可以通过电源按钮来执行此操作。
您也可以adb shell
和reboot -p
。
但在 Android Things 中,我没有看到关闭设备的方法。 如果没问题,我很乐意为此削减我的 Raspberry Pi 的力量,但这是可以接受的吗?它会破坏SD卡吗?
答案 0 :(得分:23)
Android(以及扩展名,Android Things)应该没有突然断电的问题。核心操作系统位于文件系统的只读分区中,因此不存在因失败的空中写入而损坏操作系统的风险。
此外,如果您想在测试或开发中使用reboot -p
,Gpio
仍应有效。如果您觉得有需要,可以将InputDriver
与发出KEYCODE_POWER
的{{1}}连接起来,将自己的电源按钮添加回系统。
答案 1 :(得分:20)
我喜欢Dave的答案,只想添加两件事:
您可以通过多种方式以编程方式关闭Android Things设备,但每个方法都附加了一个警告,在此讨论:Turn off device programmatically
关闭AndroidThings设备,就像你说的那样,你可以通过ADB来实现:
adb shell reboot -p
(-p
是--poweroff
)
答案 2 :(得分:11)
...并以编程方式
关机
Runtime.getRuntime().exec("reboot -p");
和重新启动
Runtime.getRuntime().exec("reboot");
Explanation
:reboot
二进制文件在Android Things图片中附带了世界可执行权限,即rwxr-xr-x
,这使其成为可能可以在任何应用程序进程中执行。换句话说,与大多数Android手机/平板电脑相比,应用程序流程不需要获得su
,因此AndroidManifest.xml
不需要额外的权限。
警告:如果在较新的操作系统版本中更改安全模型,则此方法可能无效。