पैकेज, रिपॉज़िटरी और ऐप श्रेणियाँ खोजें

पैकेज विवरणv1.2.3

jailbreak_root_detection

Android रूट डिटेक्शन के लिए RootBeer + DetectFrida का उपयोग करता है और iOS ज़ैलब्रेक डिटेक्शन के लिए IOSSecuritySuite का उपयोग करता है।

AndroidiOS
30-दिन डाउनलोड
23.2 हज़ार
लाइक
71
Pub अंक
150

पैकेज इंस्टॉल करें

flutter pub add jailbreak_root_detection

पैकेज अवलोकन

सार्वजनिक जानकारी से बना चयन मार्गदर्शन। केवल संदर्भ हेतु।

एक फ्लटर पैकेज जो विश्वसनीय पुस्तकालयों का उपयोग करके एंड्रॉइड पर रूट एक्सेस का पता लगाता है और iOS पर जेलब्रेक स्थिति का पता लगाता है: एंड्रॉइड के लिए RootBeer और iOS के लिए IOSSecuritySuite। यह डिवाइस की अखंडता की जांच करने के लिए एक एकीकृत API प्रदान करता है, जिससे डेवलपर्स ऐप्स को बदले गए वातावरण से बचाने में मदद मिलती है। इस पैकेज को सरल आदेश द्वारा फ्लटर प्रोजेक्ट्स में बिना किसी दिक्कत के एकीकृत किया जा सकता है और दोनों प्रमुख मोबाइल प्लेटफॉर्म्स का समर्थन करता है। संवेदनशील ऐप्स जैसे बैंकिंग या प्रमाणीकरण प्रणालियों को सुरक्षित करने के लिए उपयुक्त।

उपयोग

  • रूटेड/जेलब्रेक किए गए उपकरणों से वित्तीय एप्लिकेशन की रक्षा करना
  • अनधिकृत ऐप संशोधनों को रोकना
  • प्रमाणीकरण प्रवाह में सुरक्षा को बढ़ाना
  • क्षतिग्रस्त उपकरण पर्यावरण का पता लगाना
  • सुरक्षित निष्पादन परिस्थितियों को लागू करना

मुख्य विशेषताएँ

  • Android के लिए RootBeer और DetectFrida को जोड़ता है
  • IOSSecuritySuite का उपयोग iOS के लिए किया जाता है
  • क्रॉस-प्लेटफ़ॉर्म डिटेक्शन समर्थन
  • सरल Flutter एकीकरण
  • हल्का और विश्वसनीय
  • रियल-टाइम डिवाइस इंटेग्रिटी चेक

इनके लिए उपयुक्त

  • सुरक्षा-केंद्रित मोबाइल एप्लिकेशन
  • उच्च आंतरिक विश्वसनीयता के लिए आवश्यक ऐप्स
  • वित्तीय और उद्यम स्तर के एप्लिकेशन
  • एंटी-टैम्परिंग फीचर्स बनाने वाले डेवलपर्स
  • Android और iOS दोनों के लिए प्रोजेक्ट

विचार योग्य बातें

  • कुछ एमुलेटर्स पर गलत सकारात्मक परिणाम का कारण बन सकता है
  • दोनों प्लेटफॉर्म पर मूल कोड निष्पादन की आवश्यकता है
  • केवल मूल/ज़ेलब्रेक डिटेक्शन तक सीमित
  • कोई रनटाइम मिटिगेशन शामिल नहीं है
  • तीसरे पक्ष के लाइब्रेरी अपडेट पर निर्भर करता है

मूल README

संबंधित सोर्स रिपॉज़िटरी के मूल README का स्नैपशॉट। नवीनतम सामग्री के लिए रिपॉज़िटरी देखें।

jailbreak_root_detection

pub package license

Detects rooted, jailbroken, tampered and otherwise untrusted devices from Flutter.

Uses RootBeer + Magisk and Frida checks for Android root detection, and IOSSecuritySuite (~> 1.9.10) for iOS jailbreak detection.

Requirements

Minimum
Flutter 3.44.0
Dart SDK 3.12.0
Android minSdk 21, compileSdk 34, Java/Kotlin 17
iOS 11.0

The iOS side ships as a Swift Package (Swift Package Manager). A CocoaPods podspec is still included, so both dependency managers work.

Getting started

Add the dependency to your pubspec.yaml:

dependencies:
  jailbreak_root_detection: "^1.2.3"

Or:

flutter pub add jailbreak_root_detection
iOS setup

To let the plugin probe for jailbreak-related URL schemes, add them to ios/Runner/Info.plist:

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>undecimus</string>
    <string>sileo</string>
    <string>zbra</string>
    <string>filza</string>
    <string>activator</string>
    <string>cydia</string>
</array>

Without this entry iOS blocks the canOpenURL checks and jailbreak detection is less accurate.

Android setup

No extra configuration required.

Usage

import 'package:jailbreak_root_detection/jailbreak_root_detection.dart';

final detector = JailbreakRootDetection.instance;

// One combined verdict — the usual entry point.
final isNotTrust = await detector.isNotTrust;
if (isNotTrust) {
  // Block, warn, or degrade functionality.
}
API
Member Returns Android iOS Description
isNotTrust Future<bool> ✅ ✅ Combined verdict: jailbroken/rooted, not a real device, or (Android) installed on external storage. Returns true if any check throws.
isJailBroken Future<bool> ✅ ✅ Rooted (RootBeer, Frida, Magisk) on Android; jailbroken on iOS.
isRealDevice Future<bool> ✅ ✅ false on an emulator or simulator.
isDebugged Future<bool> ✅ ✅ A debugger is attached to the process.
isDevMode Future<bool> ✅ — Developer options are enabled.
isOnExternalStorage Future<bool> ✅ — The app is installed on external storage.
isTampered(String bundleId) Future<bool> — ✅ The app bundle/signature has been modified.
checkForIssues Future<List<JailbreakIssue>> ✅ ✅ All detected issues in one call.

Android-only members throw a MissingPluginException on iOS and vice versa, so guard them with Platform.isAndroid / Platform.isIOS:

if (Platform.isAndroid) {
  final isOnExternalStorage = await detector.isOnExternalStorage;
  final isDevMode = await detector.isDevMode;
}

if (Platform.isIOS) {
  const bundleId = 'com.w3conext.jailbreakRootDetectionExample';
  final isTampered = await detector.isTampered(bundleId);
}
checkForIssues

checkForIssues runs every check the platform supports and returns only the problems it found — an empty list means the device looks clean.

final issues = await detector.checkForIssues;
for (final issue in issues) {
  print('issue: $issue');
}
JailbreakIssue Android iOS Meaning
jailbreak ✅ ✅ Device is rooted or jailbroken.
notRealDevice ✅ ✅ Running on an emulator or simulator.
debugged ✅ ✅ A debugger is attached.
fridaFound ✅ ✅ The Frida instrumentation framework was detected.
devMode ✅ — Developer options are enabled.
onExternalStorage ✅ — App is installed on external storage.
proxied — ✅ An HTTP proxy is configured.
reverseEngineered — ✅ Reverse-engineering tooling was detected.
cydiaFound — ✅ Cydia was detected.
tampered — — Reported only by isTampered(bundleId), not by checkForIssues.
unknown ✅ ✅ An issue this Dart version doesn't recognise. Android currently reports Magisk detection here.

Handle unknown as untrusted rather than ignoring it.

Important: test on real devices only

This package must be tested on a physical device.

Running on an emulator or simulator may cause false positives — for example, detection may incorrectly report that the device is jailbroken or rooted.

Example

See example/lib/main.dart for a complete app that runs every check and prints the results.

Reference

License

MIT

श्रेणियाँ

सोर्स रिपॉज़िटरी

इस पैकेज का उपयोग करने वाले प्रोजेक्ट

अभी कोई डेटा उपलब्ध नहीं है।