未获得Root权限的设备:
两行代码实现
PowerManager pManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
pManager.reboot("");
权限:<uses-permission android:name="android.permission.REBOOT"/>
获取系统权限 需要加上android:sharedUserId="android.uid.system"(表示该App需要获取系统权限,获取系统权限需要系统厂家 提供的签名否则无法获取系统级的权限,也就无法实现重启)
已获得Root权限的设备:
try {
String cmd="su -c reboot";
Process process = Runtime.getRuntime().exec(cmd);
Log.i(TAG, "onClick: ==="+process.waitFor());
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}