0

我已经成功地将我的 Nexus4 植根,并试图通过 RootTools.jar 扩展名在 java 中接收 root 访问权限。当我打电话时,RootTools.isRootAvailable()我收到了true,但是当我打电话时RootTools.isAccessGiven(),实际上应该给我 root 访问权限,我收到了false??我还通过登录设备adb shell并执行了命令suid返回

    uid=0(root) gid=0(root) groups=1003(graphics), 1004(input),1007(log),1009(mount),1011(adb),1015(sdcard_rw),1028(sdcard_r),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats) context=u:r:shell:s0

那么为什么我无法在java中获得root访问权限?

4

1 回答 1

0

有几件事。在 Google play 寻呼机上,有迹象表明该应用在 Android4.3 SuperSU上仍然存在错误。

注意:如果您刚刚升级到Android 4.3,您需要手动重新root,更新应用程序是不够的。对大量更新感到抱歉,但我们需要让 4.3 正常工作。

Android 4.3 还添加了对文件功能支持的支持,以消除对 setuid 二进制文件的需求,这可能是您看到的问题的一部分,因为您无法以超级用户身份运行 java 代码,而是在 java 代码的进程上运行。您可以在 中查看 java 进程的功能/proc/<pid>/status。即使您正在跨 execve 执行 su 功能/文件功能,也确实很不稳定。Zyogote 还为从它派生出来的 java 进程设置了能力边界集。希望对一些人有所帮助。

于 2013-08-14T13:15:45.223 回答