目录
1、通过判断是否存在一些已知的root程序包名来判断机器是否被root
2、通过判断是否存在一些危险应用,比如必须需要root权限才能使用的应用的包名来判断是否被root
4、判断ro.debuggable属性和ro.secure属性
判断Android设备Root方法总结
先说结论没有办法完全检测出设备是否被root,因为root权限拥有系统的最高权限。 已经root的设备可以通过修改系统文件,和Hook来躲避检查。我们只能增加他躲避检查的难度来检测root权限。
1、通过判断是否存在一些已知的root程序包名来判断机器是否被root
"com.noshufou.android.su",
"com.noshufou.android.su.elite",
"eu.chainfire.supersu",
"com.koushikdutta.superuser",
"com.thirdparty.superuser",
"com.yellowes.su",
"com.topjohnwu.magisk"
2、通过判断是否存在一些危险应用,比如必须需要root权限才能使用的应用的包名来判断是否被root
这个方法可能会误杀一些手机,可以根据自己需求添加这个方法
"com.koushikdutta.rommanager",
"com.koushikdutta.rommanager.license",
"com.dimonvideo.luckypatcher",
"com.chelpus.lackypatch",
"com.ramdroid.appquarantine",
"com.ramdroid.appquarantinepro",
"com.android.vending.billing.InAppBillingService.COIN",
"com.chelpus.luckypatcher"
3、检测一些常用目录是否有su文件
"/data/local/",
"/data/local/bin/",
"/data/local/xbin/",
"/sbin/",
"/su/bin/",
&#