Powering off Android Things

后端 未结 3 1939
无人及你
无人及你 2020-12-05 17:05

Usually, to power down an Android device, you do this via the power button of course.

You can also do adb shell and reboot -p.

相关标签:
3条回答
  • 2020-12-05 17:52

    I like Dave's Answer, just wanted to add two things:

    You could shut down the Android Things device programatically a number of ways but each has a caveat attached to it, discussed here: Turn off device programmatically

    To power off an AndroidThings device like you said you can do it via ADB:

     adb shell reboot -p
    

    (-p is short for --poweroff)

    0 讨论(0)
  • 2020-12-05 17:52

    ... and programmatically

    for powering off

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

    and rebooting

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

    Explanation: the reboot binary is shipped in Android Things image with the world-executable permission, i.e. rwxr-xr-x, which makes it possible to be executable from within any app process. In other words, an app process does not need to gain su in contrast to most stock Android phones/tablets, so is no extra permission needed in AndroidManifest.xml.

    Caution: in case of security model changes in newer OS versions this approach may not work.

    0 讨论(0)
  • 2020-12-05 18:04

    Android (and by extension, Android Things) should have no problem with a sudden loss of power. The core operating system is housed in read-only partitions on the file system, so there is no risk of corrupting the OS from a failed in-flight write.

    Also, reboot -p should still work if you wanted to use that in testing or development. Going even farther with it, you could connect a Gpio with an InputDriver that emits KEYCODE_POWER to add your own power button back to the system if you felt you needed it.

    0 讨论(0)
提交回复
热议问题