Pakete, Repositories und App-Kategorien suchen

Cover von in_app_idle_detector
Paketdetailsv0.0.1

in_app_idle_detector

Ein Flutter-Plugin zur Erkennung von Benutzerinaktivität (Leerlauf) auf allen Plattformen.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
174
Likes
6
Pub-Punkte
150

Paket installieren

flutter pub add in_app_idle_detector

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Das in_app_idle_detector-Paket ist ein plattformübergreifender Flutter-Plugin, der die Inaktivität des Benutzers (Idle-Zustand) auf Android, iOS, Web, macOS, Windows und Linux erkennt. Er überwacht Benutzerinteraktionen wie Berührungen, Mausbewegungen und Tastatureingaben, um festzustellen, wann der Benutzer eine bestimmte Dauer lang inaktiv war. Dadurch können Entwickler Aktionen wie Bildschirm-Timeouts, Sitzungsablauf oder automatisches Abmelden auslösen. Der Plugin ist leichtgewichtig und lässt sich nahtlos in bestehende Flutter-Anwendungen integrieren, ohne dass native Codeänderungen erforderlich sind.

Anwendungsfälle

  • Automatischer Sitzungsablauf
  • Benutzeraktivitätsverfolgung
  • Bildschirm-Sperre bei Inaktivität
  • Unbefugten Zugriff verhindern
  • Automatisches Abmelden nach Inaktivität

Hauptmerkmale

  • Plattformübergreifende Unterstützung
  • Echtzeit-Idle-Erkennung
  • Konfigurierbare Inaktivitätsdauer
  • Kein natives Code erforderlich
  • Einfache API-Integration

Geeignet für

  • Sicherheitskritische Apps
  • Zeitbasiertes Sitzungsmanagement
  • Kiosk- oder öffentliche Terminal-Apps
  • Apps, die eine Überwachung der Nutzerbeteiligung erfordern

Hinweise

  • Kann bei lang laufenden Apps geringen Akkuverbrauch verursachen
  • Benötigt Berechtigung auf einigen Plattformen
  • Das Verhalten kann sich zwischen Plattformen leicht unterscheiden
  • Nicht geeignet für Anforderungen an hochpräzise Zeitmessung

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

Pub Version License Platform

💤 in_app_idle_detector

A lightweight Flutter plugin that detects user inactivity (idle state) across all platforms: Android, iOS, Web, Windows, macOS, and Linux.

Perfect for banking apps, secure dashboards, or any app that needs to react when the user goes idle.


✨ Features

  • 🔄 Detect inactivity after custom timeout
  • 👨‍💻 Keyboard, mouse, touch & app lifecycle supported
  • 🖥️ Cross-platform (Android, iOS, Web, Desktop)
  • ⏱️ Remaining time tracking
  • 🛠️ Lightweight – no native code
  • 🔐 Ideal for auto logout, lock screen, and productivity

📦 Installation

dependencies:
  in_app_idle_detector: ^0.0.1

Working Demo

DEMO DEMO DEMO DEMO

🧑‍💻 Usage

  1. Initialize the plugin (e.g. inside main())
void main() {
  runApp(MyApp());

  InAppIdleDetector.initialize(
    timeout: Duration(seconds: 10), // Set your own duration
    onIdle: () {
      // Called when user goes idle
      print("User is idle");
    },
    onActive: () {
      // Called when user becomes active again
      print("User is active");
    },
  );
}
  1. Show a dialog or take action on idle
showDialog(
  context: navigatorKey.currentContext!,
  builder: (_) => AlertDialog(
    title: Text("Idle Warning"),
    content: Text("You've been inactive for 10 seconds."),
    actions: [
      TextButton(
        onPressed: () {
          Navigator.of(navigatorKey.currentContext!).pop();
        },
        child: Text("Dismiss"),
      ),
    ],
  ),
);
  1. Extra API (Pause / Resume / Reset)
InAppIdleDetector.pause();  // Stop tracking temporarily
InAppIdleDetector.resume(); // Resume tracking
InAppIdleDetector.reset();  // Manually reset idle timer
  1. Get Remaining Time
final timeLeft = InAppIdleDetector.remainingTime;
final idleStatus = InAppIdleDetector.isIdle;

✅ Use Cases

🔒 Auto-logout after inactivity (e.g., in banking apps)

🔐 Lock screen on desktops after idle

⏱️ Countdown timers for session expiration

📉 Inactivity analytics and user behavior tracking

🧪 Platform Support

Platform Supported
✅ Android Yes
✅ iOS Yes
✅ Web Yes
✅ Windows Yes
✅ macOS Yes
✅ Linux Yes

📚 API Summary

Method Description initialize(...) Starts the idle detection system reset() Resets the timer (e.g. after activity) pause() Temporarily disables tracking resume() Resumes tracking isIdle Returns true if currently idle remainingTime Returns Duration until next idle trigger

💡 Tips

Always use navigatorKey.currentContext for dialogs to ensure it works from anywhere. You can build a visual countdown using remainingTime and a Timer.periodic.

Support the Project

If you find this plugin helpful, consider supporting its development:

Your support is greatly appreciated!

Bugs/Requests

Feel free to open an issue if you encounter any problems or think that the plugin is missing some feature.

sheth02parth1299@gmail.com

🙌 Author

Created by Parth Sheth 🧠 Contributions, stars, and feedback are welcome!

Kategorien

Abhängigkeiten

Abhängigkeiten 2 Einträge

  • plugin_platform_interface^2.0.2
  • web^1.0.0

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.