# 如何判断系统是否root

#### 问题现象

HarmonyOS如何防止应用在系统root的情况下进行敏感操作，如何检测手机是否root？

#### 解决方案

*   方法一：手机root之后可以查看更多的系统信息，可以使用hdc命令根据是否能查看相关信息来确定手机是否root，比如：
    1.  运行hdc shell param get命令，如果只有几行信息打印说明没有root。
    2.  运行hdc shell param get const.product.devicetype查看设备类型，提示fail，说明没有root。
*   方法二：运行hdc shell，进入的命令行观察用户身份是普通用户（$）还是管理员用户（#），如果是#手机则被root过，如果是$手机没有被root过。
*   方法三：通过代码检查系统完整性，包含在线检测与本地检测。根据safetyDetect.checkSysIntegrity返回结果进行判断。basicIntegrity为false则表示系统完整性存在风险。当basicIntegrity为false且detail为jailbreak则表示设备被越狱。