@capgo/capacitor-is-root の使用
Capacitor は、root化されたAndroidデバイスや脱獄されたiOSデバイスを検出するIs Rootプラグインです。
インストール
bun add @capgo/capacitor-is-root
bunx cap sync
bunx cap sync プラグインのネイティブcodeをネイティブプロジェクトにコピーします。プラグインをアップグレードするたびに再度実行してください。
インポート
import { IsRoot } from '@capgo/capacitor-is-root';
API の概要
| メソッド | 説明 |
|---|---|
isRooted |
標準的なroot/jailbreak検知を実行します。 |
isRootedWithBusyBox |
BusyBox特有のチェックを追加します(Androidのみ)。 |
detectRootManagementApps |
既知のroot管理アプリの有無を検知します(Androidのみ)。 |
detectPotentiallyDangerousApps |
root化端末によく見られる危険なアプリを検知します(Androidのみ)。 |
detectTestKeys |
デバッグ/テスト用のビルドタグを検知します(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イメージ上のテストビルドタグを検出します (Androidのみ)。 |
doesSuperuserApkExist |
superuser APKがインストールされているか検出します (Androidのみ)。 |
isExistSUPath |
既知の su バイナリの場所を確認します (Androidのみ)。 |
checkDirPermissions |
保護すべき書き込み可能なディレクトリを検出します (Androidのみ)。 |
checkExecutingCommands |
実行します which su style コマンドで root 化を検知します(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()
デバッグ/テスト用のビルドタグを検知します(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個のコアメソッドが記載されています。リスナーやバージョンのヘルパー、各メソッドの完全な仕様については、以下に記載されています。 GitHub リポジトリ.
完全なリファレンス
@capgo/capacitor-is-root の使用方法から続けてください。
使用している場合 @capgo/capacitor-is-root の使用 ネイティブプラグインの作業を計画するには、次と連携してください: @capgo/capacitor-is-root @capgo/capacitor-is-root の実装詳細については、 スタートガイド スタートガイドの実装詳細については、 Capgo プラグインディレクトリ Capgo プラグインディレクトリのプロダクトワークフローについては、 Capgo による Capacitor プラグイン Capgo による Capacitor Plugins の実装詳細、および プラグインの追加または更新 プラグインの追加または更新に関する実装詳細についてはこちら。