Vai al contenuto

Guida rapida

GitHub

Puoi usare il nostro Setup assistito dall'AI per installare il plugin. Aggiungi le skill Capgo al tuo tool AI con il comando seguente:

Finestra del terminale
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Poi 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:

Finestra del terminale
bun add @capgo/capacitor-is-root
bunx cap sync
import { IsRoot } from '@capgo/capacitor-is-root';
import { IsRoot } from '@capgo/capacitor-is-root';
const { result } = await IsRoot.isRooted();
if (result) {
blockSensitiveFlow();
}

Il rilevamento dell'emulatore non è incluso di default isRooted(). Chiamalo esplicitamente quando richiesto dalla policy.

const { result } = await IsRoot.isRunningOnEmulator();
const checks = await Promise.all([
IsRoot.detectRootManagementApps(),
IsRoot.checkForSuBinary(),
]);
  • 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.

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');
}

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);

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);

Rileva i tag di build debug/test (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.detectTestKeys();
console.log(result);

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);

Verifica se il su binario è presente (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForSuBinary();
console.log(result);

Rileva se il su binario è eseguibile (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkSuExists();
console.log(result);

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);

Rileva proprietà di sistema pericolose (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForDangerousProps();
console.log(result);

Esegue i controlli nativi di RootBeer (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkForRootNative();
console.log(result);

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);

Controlla lo stato di enforcement di SELinux (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isSelinuxFlagInEnabled();
console.log(result);

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);

Rileva se sono installate APK superuser (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.doesSuperuserApkExist();
console.log(result);

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);

Rileva directory scrivibili che dovrebbero essere protette (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkDirPermissions();
console.log(result);

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);

Rileva pacchetti installati sospetti (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkInstalledPackages();
console.log(result);

Rileva certificati OTA manomessi (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkforOverTheAirCertificates();
console.log(result);

Rileva fingerprint comuni degli emulatori (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.isRunningOnEmulator();
console.log(result);

Esegue un controllo leggero dell'emulatore (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckEmulator();
console.log(result);

Rileva fingerprint di emulatori x86 (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckSDKBF86();
console.log(result);

Rileva build di telefoni di riferimento QC (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckQRREFPH();
console.log(result);

Rileva anomalie nell'host di build (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.simpleCheckBuild();
console.log(result);

Rileva i fingerprint dell'emulatore Genymotion (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkGenymotion();
console.log(result);

Rileva i fingerprint degli emulatori generici (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkGeneric();
console.log(result);

Rileva i fingerprint dell'emulatore Google SDK (solo Android).

import { IsRoot } from '@capgo/capacitor-is-root';
const result = await IsRoot.checkGoogleSDK();
console.log(result);

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);

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);

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);

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;
}

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;
}

Questa pagina è generata dal src/definitions.ts. Riesegui la sync quando il API pubblico cambia upstream.

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.