Answers:
要检测设备的生根状态,应用程序会发出su
命令。如果退出状态为0
,则表示设备已root。否则,不是。
为防止这种情况,您可以Deny
使用SuperUser的弹出式窗口(仅在SuperUser设置允许的情况下,当应用程序发出su
命令时会显示一个弹出式窗口)来进行根访问。之后,该应用将获得non-zero
退出状态,并且无法确定生根状态。
更新:
某些应用程序可以使用其他方式检查根目录状态(例如检查su
二进制文件是否存在)。我想承认,没有假阳性结果的方法都不是完美的方法,但是有时候运气很好。
防止检测的最佳通用方法:限制应用程序守护程序的权限。我不建议确切的权限限制,因为我不知道该应用程序的功能。它会搞乱应用程序的功能。
最后,我想说:从技术上讲,没有办法以100%的成功率阻止检测。在权限限制的情况下,应用仍然可以怀疑出了什么问题。
su
通过临时根目录将文本文件放在该位置,则该应用程序将告知错误结果。
Always Allow
“超级用户”选项未激活。您可以防止通过检测Always Deny
或Deny All
太(选项文字可能因版本而异)。
我使用OTA Rootkeeper,该功能包括备份su
和临时取消手机root的功能。临时取消root后,可以通过还原su
备份来重新获得root 。
(此外,当您通过无线运营商应用OTA更新时,它还会尝试保留根目录,这是一个非常不错的功能。)
这对我有用:
1-您需要安装Xposed框架,您可以从此处安装它:http: //repo.xposed.info/module/de.robv.android.xposed.installer,Xposed是可更改行为的模块框架系统和应用程序,而无需触摸任何APK。
2-从此处http://repo.xposed.info/module/com.devadvance.rootcloak下载Root Cloak放置模块并启用它。
3-添加您要隐藏根的应用程序。
在此过程中,将需要重启几次。
超级用户已经有一个临时unroot复选框,可以正常运行,经过测试
这个问题已经被提出并回答:
总而言之,寻找名为“ SuperUser”的应用程序(作为一项建议)。
-edit-每个建议,如果链接断开:
如果安装SuperUser,则可以控制允许哪些应用程序具有root用户访问权限。默认情况下,它阻止所有请求并询问您要做什么。您可以无限期授予应用访问权限并随时将其撤消,也可以只允许特定请求超时。多数带有Root的ROM都是预安装的,包括CyanogenMOD,许多生根方法也会为您安装它。
或者,您可以从设备中删除su二进制文件和Busybox,以有效地取消其根目录。
/system/xbin/su
是否存在-实际上有点“安静”,然后尝试执行su
,偷偷摸摸,我知道:)