Android SU权限:如何使用它们?
这里有一种情况,我正在开发一个使用Java的Android应用程序。 我对这些东西非常熟悉,但现在这是我第一次需要使用SU权限。 我只需要替换(实际上,重命名)system / app目录中的文件,但看起来我无法以通常的方式执行它(File类中的renameTo方法),它只返回FALSE,这意味着操作中有一些错误。
那么有谁能告诉我如何使用SU? 我的测试手机完全符合SU 3.0.3.2,任何需要SU的应用程序都能完美运行。
我应该使用相同的方法,但在清单中添加了一些内容吗? 我应该以某种方式使用busybox吗?
我已经用Google搜索了,我找不到任何有用的信息。 此外,官方Android超级用户网站上没有文档。
提前致谢!
您可能还需要将文件系统重新安装为RW,因为/ system是只读的。 因此,您可能需要使用以下类似命令调用SU:
mount -or,remount -t yaffs2 /dev/block/mtdblock3 /system
要执行命令,你可以尝试两种方式(我在android中注意到有时一个工作而另一个不工作)
Process p = Runtime.getRuntime().exec(new String[]{"su", "-c", "mount -or,remount -t yaffs2 /dev/block/mtdblock3 /system"});
或者你可以做到
Process p = Runtime.getRuntime().exec("su"); p.getOutputStream().write("mount -or,remount -t yaffs2 /dev/block/mtdblock3 /system".getBytes()); p.getOutputStream().write();
- Android保存RSA私钥和公钥
- android.view.InflateException:二进制XML文件行#:错误类膨胀
- 错误:(59,8)错误:无法访问未找到android.support.v4.app.ActivityCompatApi23的ActivityCompatApi23类文件
- 尝试在空对象引用上调用虚方法’int java.lang.String.length()’
- 将事件添加到此日历
- 如何在recyclerView android中停止项目重复
- 使用API21进行编译时出现UnsatisfiedLinkError
- Android DevicePolicyManager lockNow()
- Android – 将多个图像合并为一个ImageView