-
-
Notifications
You must be signed in to change notification settings - Fork 209
Description
您好,开发者!
感谢您的努力提供了如此好用的全方位管理Android设备的APP,而且包含了针对Linux的支持。
我在尝试进入Root模式时候提示无法检测到Root,这个问题在 #88 中已经有了明确的回答
但同时我也发现了您的一个Commit:7071c46
我意识到您可能期望通过adb shell id的方式获取Root,我不了解应用程序开发,所以这仅仅是针对我看的一点内容的推测
至少获取id肯定没错,这是最佳的验证Root的方式,很多大厂也会通过这种方式进行基础检测,但我的设备上不太对劲
以下内容只作为提议出现,如果您觉得不合理,随时关闭issue即可
假设执行:
adb shell id
会提示:
uid=2000(shell) gid=2000(shell) groups=2000(shell),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),1078(ext_data_rw),1079(ext_obb_rw),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc),3011(uhid),3012(readtracefs) context=u:r:shell:s0
但如果执行:
adb shell su -c id
可以获取得到
uid=0(root) gid=0(root) groups=0(root) context=u:r:su:s0
所以我斗胆怀疑您可能缺少了su -c的执行,但是如果执行su -c,对于非Root设备来说,就会出现
/system/bin/sh: su: inaccessible or not found
这可能会影响adb的执行
此外,兴许userdebug可以让id(root)出现在adb shell id中,但我很久接触不到userdebug的系统了,我不记得是不是这样
总之,感谢您的付出与努力,每一名开源开发者都值得被尊敬。
此致敬礼