As CommonsWare already said that this is not possible in an Ordinary SDK Application. You need to sign your app with the System Firmware Key
. But it's possible for your app with Root
privileges. Try using the following code (if you have SU access):
Shutdown:
try {
Process proc = Runtime.getRuntime()
.exec(new String[]{ "su", "-c", "reboot -p" });
proc.waitFor();
} catch (Exception ex) {
ex.printStackTrace();
}
Restart:
Same code, just use "reboot"
instead of "reboot -p"
.
[On an other note: I read somewhere that these commands do not work on Stock HTC ROMs, but haven't confirmed myself]
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…