使用 @capgo/capacitor-is-root
Capacitor Is Root 插件用于检测已 Root 的 Android 设备或已越狱的 iOS 设备。
安装
bun add @capgo/capacitor-is-root
bunx cap sync
bunx cap sync 将插件的原生 code 复制到你的原生项目中。每次升级插件后都要重新运行。
导入
import { IsRoot } from '@capgo/capacitor-is-root';
API 概览
| 方法 | 描述 |
|---|---|
isRooted |
执行默认的 root/越狱检测。 |
isRootedWithBusyBox |
通过 BusyBox 特定检查扩展默认检测功能(仅限 Android)。 |
detectRootManagementApps |
检测是否存在已知的 root 管理应用(仅限 Android)。 |
detectPotentiallyDangerousApps |
检测 root 设备上常见的潜在危险应用(仅限 Android)。 |
detectTestKeys |
检测 debug/test build 标签(仅限 Android)。 |
checkForBusyBoxBinary |
检查设备上是否存在 BusyBox 二进制文件(仅限 Android)。 |
checkForSuBinary |
检查是否存在 su 二进制文件(仅限 Android)。 |
checkSuExists |
检测该 su 二进制文件是否可执行(仅限 Android)。 |
checkForRWPaths |
检测全局可写的系统路径(仅限 Android)。 |
checkForDangerousProps |
检测危险的系统属性(仅限 Android)。 |
checkForRootNative |
执行 RootBeer 原生检查(仅限 Android)。 |
detectRootCloakingApps |
检测可隐藏 Root 的应用(仅限 Android)。 |
isSelinuxFlagInEnabled |
检查 SELinux 强制执行状态(仅限 Android)。 |
isExistBuildTags |
检测 OS 镜像上的测试 build 标签(仅限 Android)。 |
doesSuperuserApkExist |
检测是否安装了 superuser APK(仅限 Android)。 |
isExistSUPath |
检查已知的 su 二进制文件位置(仅限 Android)。 |
checkDirPermissions |
检测需要保护的可写目录(仅限 Android)。 |
checkExecutingCommands |
执行 which su 检测 Root 状态的 shell 命令(仅限 Android)。 |
checkInstalledPackages |
检测可疑的已安装软件包(仅限 Android)。 |
checkforOverTheAirCertificates |
检测篡改过的 OTA 证书(仅限 Android)。 |
isRunningOnEmulator |
检测常见的模拟器特征(仅限 Android)。 |
simpleCheckEmulator |
执行轻量级模拟器检查(仅限 Android)。 |
simpleCheckSDKBF86 |
检测 x86 模拟器特征(仅限 Android)。 |
simpleCheckQRREFPH |
检测 QC 参考机型构建(仅限 Android)。 |
simpleCheckBuild |
检测构建主机异常(仅限 Android)。 |
checkGenymotion |
检测 Genymotion 模拟器特征(仅限 Android)。 |
checkGeneric |
检测通用模拟器特征(仅限 Android)。 |
checkGoogleSDK |
检测 Google SDK 模拟器特征(仅限 Android)。 |
togetDeviceInfo |
返回检测过程中收集的设备信息。 |
isRootedWithEmulator |
通过模拟器启发式算法扩展默认检测(仅限 Android)。 |
isRootedWithBusyBoxWithEmulator |
通过模拟器启发式算法扩展 BusyBox 检测(仅限 Android)。 |
示例
isRooted()
执行默认的 root/越狱检测。
import { IsRoot } from '@capgo/capacitor-is-root';
const { result } = await IsRoot.isRooted();
if (result) {
console.log('Device is rooted/jailbroken');
} else {
console.log('Device is not rooted/jailbroken');
}
isRootedWithBusyBox()
通过 BusyBox 特定检查扩展默认检测功能(仅限 Android)。
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isRootedWithBusyBox();
console.log(result);
detectRootManagementApps()
检测是否存在已知的 root 管理应用(仅限 Android)。
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectRootManagementApps();
console.log(result);
detectPotentiallyDangerousApps()
检测 root 设备上常见的潜在危险应用(仅限 Android)。
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectPotentiallyDangerousApps();
console.log(result);
detectTestKeys()
检测 debug/test build 标签(仅限 Android)。
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectTestKeys();
console.log(result);
checkForBusyBoxBinary()
检查设备上是否存在 BusyBox 二进制文件(仅限 Android)。
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForBusyBoxBinary();
console.log(result);
上表列出了 31 个核心方法。Listener 和版本辅助函数,以及每个方法的完整契约,请参阅 GitHub 仓库.
完整参考文档
继续阅读“使用 @capgo/capacitor-is-root”
如果你正在使用 使用 @capgo/capacitor-is-root 要规划原生插件工作,请将其与 @capgo/capacitor-is-root 了解 @capgo/capacitor-is-root 中的实现细节, 快速入门 有关“入门指南”中的实现细节, Capgo 插件目录 查看 Capgo 插件目录中的产品工作流, Capgo 提供的 Capacitor 插件 有关 Capgo 开发的 Capacitor 插件的实现细节,以及 添加或更新插件 有关添加或更新插件的实现细节。