Guida rapida
Copia un prompt di setup con i passaggi di installazione e la guida markdown completa per questo plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-is-root`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/is-root/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installazione
Sezione intitolata “Install”Puoi usare il nostro Setup assistito dall'AI per installare il plugin. Aggiungi le skill Capgo al tuo tool AI con il comando seguente:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi usa questo prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-is-root` plugin in my project.Se preferisci il Setup manuale, installa il plugin eseguendo i comandi seguenti e segui le istruzioni specifiche per piattaforma qui sotto:
bun add @capgo/capacitor-is-rootbunx cap syncImporta
Sezione intitolata “Import”import { IsRoot } from '@capgo/capacitor-is-root';Avvio rapido
Sezione intitolata “Avvio rapido”import { IsRoot } from '@capgo/capacitor-is-root';
const { result } = await IsRoot.isRooted();if (result) { blockSensitiveFlow();}Esempio: segnale emulatore Android
Sezione intitolata “Esempio: segnale emulatore Android”Il rilevamento dell'emulatore non è incluso di default isRooted(). Chiamalo esplicitamente quando richiesto dalla policy.
const { result } = await IsRoot.isRunningOnEmulator();Esempio: audit Android più approfondito
Sezione intitolata “Esempio: audit Android più approfondito”const checks = await Promise.all([ IsRoot.detectRootManagementApps(), IsRoot.checkForSuBinary(),]);Errori comuni
Sezione intitolata “Errori comuni”- Simulatore iOS: riporta sempre che non è jailbroken, testa su dispositivo.
- Falsi positivi: affianca i controlli root al risk scoring lato server, non limitarti ai crash forzati.
- Policy di utilizzo: bloccare tutti gli utenti con root potrebbe confliggere con la categoria dello store; documenta la UX.
API Panoramica
Sezione intitolata “Panoramica API”isRooted
Sezione intitolata “isRooted”Esegue i controlli predefiniti per il rilevamento di root/jailbreak.
Questo è il metodo consigliato per un rilevamento base di root/jailbreak. Utilizza una combinazione delle euristiche di rilevamento più affidabili per la piattaforma. Funziona sia su Android che su iOS.
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
Sezione intitolata “isRootedWithBusyBox”Estende il rilevamento predefinito con controlli specifici per BusyBox (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isRootedWithBusyBox();console.log(result);detectRootManagementApps
Sezione: “detectRootManagementApps”Rileva la presenza di note applicazioni di gestione del root (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectRootManagementApps();console.log(result);detectPotentiallyDangerousApps
Sezione: “detectPotentiallyDangerousApps”Rileva applicazioni potenzialmente pericolose comuni sui dispositivi rootati (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectPotentiallyDangerousApps();console.log(result);detectTestKeys
Sezione: “detectTestKeys”Rileva i tag di build debug/test (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectTestKeys();console.log(result);checkForBusyBoxBinary
Sezione: “checkForBusyBoxBinary”Verifica se sul dispositivo è presente un binario BusyBox (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForBusyBoxBinary();console.log(result);checkForSuBinary
Sezione intitolata “checkForSuBinary”Verifica se il su binario è presente (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForSuBinary();console.log(result);checkSuExists
Sezione intitolata “checkSuExists”Rileva se il su binario è eseguibile (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkSuExists();console.log(result);checkForRWPaths
Sezione intitolata “checkForRWPaths”Rileva percorsi di sistema con permessi di scrittura globali (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForRWPaths();console.log(result);checkForDangerousProps
Sezione intitolata “checkForDangerousProps”Rileva proprietà di sistema pericolose (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForDangerousProps();console.log(result);checkForRootNative
Sezione intitolata “checkForRootNative”Esegue i controlli nativi di RootBeer (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForRootNative();console.log(result);detectRootCloakingApps
Sezione intitolata “detectRootCloakingApps”Rileva app in grado di nascondere il root (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectRootCloakingApps();console.log(result);isSelinuxFlagInEnabled
Sezione intitolata “isSelinuxFlagInEnabled”Controlla lo stato di enforcement di SELinux (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isSelinuxFlagInEnabled();console.log(result);isExistBuildTags
Sezione intitolata “isExistBuildTags”Rileva tag di build di test sull'immagine OS (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isExistBuildTags();console.log(result);doesSuperuserApkExist
Sezione intitolata “doesSuperuserApkExist”Rileva se sono installate APK superuser (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.doesSuperuserApkExist();console.log(result);isExistSUPath
Sezione intitolata “isExistSUPath”Verifica i percorsi noti su posizioni note dei binari (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isExistSUPath();console.log(result);checkDirPermissions
Sezione intitolata “checkDirPermissions”Rileva directory scrivibili che dovrebbero essere protette (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkDirPermissions();console.log(result);checkExecutingCommands
Sezione intitolata “checkExecutingCommands”Esegue which su comandi shell per rilevare il root (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkExecutingCommands();console.log(result);checkInstalledPackages
Sezione intitolata “checkInstalledPackages”Rileva pacchetti installati sospetti (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkInstalledPackages();console.log(result);checkforOverTheAirCertificates
Sezione intitolata “checkforOverTheAirCertificates”Rileva certificati OTA manomessi (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkforOverTheAirCertificates();console.log(result);isRunningOnEmulator
Sezione intitolata “isRunningOnEmulator”Rileva fingerprint comuni degli emulatori (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isRunningOnEmulator();console.log(result);simpleCheckEmulator
Sezione intitolata “simpleCheckEmulator”Esegue un controllo leggero dell'emulatore (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckEmulator();console.log(result);simpleCheckSDKBF86
Sezione intitolata “simpleCheckSDKBF86”Rileva fingerprint di emulatori x86 (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckSDKBF86();console.log(result);simpleCheckQRREFPH
Sezione intitolata “simpleCheckQRREFPH”Rileva build di telefoni di riferimento QC (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckQRREFPH();console.log(result);simpleCheckBuild
Sezione intitolata “simpleCheckBuild”Rileva anomalie nell'host di build (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckBuild();console.log(result);checkGenymotion
Sezione intitolata “checkGenymotion”Rileva i fingerprint dell'emulatore Genymotion (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkGenymotion();console.log(result);checkGeneric
Sezione intitolata “checkGeneric”Rileva i fingerprint degli emulatori generici (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkGeneric();console.log(result);checkGoogleSDK
Sezione intitolata “checkGoogleSDK”Rileva i fingerprint dell'emulatore Google SDK (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkGoogleSDK();console.log(result);togetDeviceInfo
Sezione intitolata “togetDeviceInfo”Restituisce le informazioni sul dispositivo raccolte durante il rilevamento.
Fornisce contesto e metadati aggiuntivi sul dispositivo raccolti durante il processo di root detection. Utile per il debugging e il logging.
import { IsRoot } from '@capgo/capacitor-is-root';
const deviceInfo = await IsRoot.togetDeviceInfo();console.log('Device info:', deviceInfo);isRootedWithEmulator
Sezione intitolata “isRootedWithEmulator”Estende la detection predefinita con euristiche per emulatori (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isRootedWithEmulator();console.log(result);isRootedWithBusyBoxWithEmulator
Sezione intitolata “isRootedWithBusyBoxWithEmulator”Estende la detection di BusyBox con euristiche per emulatori (solo Android).
import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isRootedWithBusyBoxWithEmulator();console.log(result);Riferimento ai tipi
Sezione intitolata “Riferimento ai tipi”DetectionResult
Sezione intitolata “DetectionResult”Risultato restituito dai metodi di root/jailbreak detection.
export interface DetectionResult { /** * `true` when the associated heuristic detects root/jailbreak artifacts. * `false` when no root/jailbreak indicators are found. * * @since 1.0.0 */ result: boolean;}DeviceInfo
Sezione dal titolo “DeviceInfo”Informazioni sul dispositivo raccolte durante il rilevamento.
export interface DeviceInfo { /** * Arbitrary key/value device metadata populated by the native implementation. * Contents vary by platform and detection methods used. * * @since 1.0.0 */ [key: string]: any;}Fonte di verità
Sezione intitolata “Source Of Truth”Questa pagina è generata dal src/definitions.ts. Riesegui la sync quando il API pubblico cambia upstream.
Continua da Getting Started
Sezione intitolata “Continua da Getting Started”Se stai usando Guida rapida per pianificare dashboard e operazioni API, collegalo a Utilizzo di @capgo/capacitor-is-root per la funzionalità nativa in Utilizzo di @capgo/capacitor-is-root, API Panoramica per i dettagli di implementazione in Panoramica di API, Introduzione per i dettagli implementativi nell'Introduzione, Chiavi API per i dettagli implementativi in API Keys, e Dispositivi per i dettagli implementativi in Dispositivi.