现在网上的代码一般都不能重启,或者关机,我的代码可以实现绝大多数的手机关机和重启,并且不需要jni的操作
方法/步骤
-
创建android项目
-
创建android项目并配置布局文件
-
编辑布局文件,拖一个按钮到布局文件中,并添加点击事件android:onClick="onReboot"
-
在mainactivity里面设置onReboot方法
方法内容如下:
public void onReboot(View v){ try { Runtime.getRuntime().exec("su -c \"/system/bin/shutdown\""); } catch (IOException e) { e.printStackTrace(); } }
Runtime.getRuntime().exec("su -c \"/system/bin/shutdown\"");这条命令是关机的命令
Runtime.getRuntime().exec("su -c \"/system/bin/reboot\"");
这条名利是手机重启
这两句代码是关机和重启的核心的代码
-
解释:
android虚拟机是支持Linux-shell语言的用Runtime这个Java类来调用并执行shell命令,但是普通用户执行reboot和shutdown是不能成功的,在android中这属于管理员权限的内容,所以前面要加上su命令(获取管理员权限的命令)
END