双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

手机已经ROOT exec("su")还是报错

雕·不懒惰 雕·不懒惰 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
手机已经ROOT,在CMD窗口、Terminal都可以执行
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权限获取和使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

weixin_38617604

检测手机是否Root

检测手机是否Root源码判断安卓手机是否root有三种方式,本源码是第三种方式。

weixin_38653664

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”

weixin_38605144
评论 14
收藏 已收藏
分享
返回顶部
雕·不懒惰
Android 80,489 成员 91,371 内容