手机已经ROOT exec("su")还是报错
try {
Process process = Runtime.getRuntime().exec("su");---------就这是句报错
DataOutputStream out = new DataOutputStream(process.getOutputStream());
out.writeBytes(“reboot \n”);
out.writeBytes("exit\n");
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
还是报下面的错
java.io.IOException: Error running exec(). Command: [su] Working Directory: null Environment: null
at java.lang.ProcessManager.exec(ProcessManager.java:211)
at java.lang.Runtime.exec(Runtime.java:174)
at java.lang.Runtime.exec(Runtime.java:247)
at java.lang.Runtime.exec(Runtime.java:190)
at cn.mdisplay.admin3d.DeviceUtil.restart_device(DeviceUtil.java:80)
at cn.mdisplay.admin3d.MainActivity.onViewClicked(MainActivity.java:52)
at cn.mdisplay.admin3d.MainActivity_ViewBinding$4.doClick(MainActivity_ViewBinding.java:72)
at butterknife.internal.DebouncingOnClickListener.onClick(DebouncingOnClickListener.java:22)
at android.view.View.performClick(View.java:5265)
at android.view.View$PerformClick.run(View.java:21527)
at android.os.Handler.handleCallback(Handler.java:815)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:207)
at android.app.ActivityThread.main(ActivityThread.java:5692)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:908)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:769)
Caused by: java.io.IOException: Permission denied
at java.lang.ProcessManager.exec(Native Method)
at java.lang.ProcessManager.exec(ProcessManager.java:209)
... 18 more
如果是应用没有ROOT权限的话,在运行报错的那句的时候也应该弹申请ROOT权限的弹窗的,然而并没有,怎么破啊啊啊......
相关推荐
su-exec:对于Linux node.js,以root身份运行可执行文件,类似于linux中的sudo。
苏执行 这个linux node.js模块使使用root特权执行外部可执行文件变得很简单,类似于sudo 。 该模块在初始化时需要root用户,因此您的应用程序应以root用户身份启动。 不要忘记使用process.setuid()和process.setgid()放弃root特权。 它与当前节点进程一起保留了一个很小的后台进程来获取root特权。 如何使用 使用npm install su-exec 。 使用前,应使用suExec.init()一次初始化。 此时,节点进程应具有root特权。 然后使用suExec.execFile(file, argv, options, cb)或suExec.execPath(file, argv, options, cb) 。 execPath方法可以搜索PATH中的可执行文件(就像shell一样)。 var suExec = requir
Android Root设备中的su权限获取和使用详解
本篇文章主要介绍了Android Root设备中的su权限获取和使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
检测手机是否Root
检测手机是否Root源码判断安卓手机是否root有三种方式,本源码是第三种方式。
android apk获取root权限方法总结
android apk获取root权限方法总结
Android中Root权限获取的简单代码
我们知道Android手机操作系统采用的是Linux内核,Linux中最高的系统权限就是Root,这就类似与Windows中的Administrator系统管理员权限,也就是操作系统的最高权限。由于Root的权限过高,因此手机产商一般都不允许用户直接拥用Root权限,以防止用户修改系统内置的业务跟程序。但是对于用户来说,当然希望能拥有Root权限以将手机修改成自己的一种特色,因为有Root权限则可以任意修改手机的所有文件跟程序,让手机更加个性化。 代码如下:Process process = null; try{ process = Runtime.getRuntime().exec(“su”



