idle_logout 2.0.0 copy "idle_logout: ^2.0.0" to clipboard
idle_logout: ^2.0.0 copied to clipboard

Automatic inactivity-based logout trigger for Flutter applications with configurable timeout detection.

example/lib/main.dart

// ignore_for_file: public_member_api_docs

import 'package:flutter/material.dart';
import 'package:idle_logout/idle_logout.dart';
import 'package:idle_logout_sample/screens/home_screen.dart';
import 'package:idle_logout_sample/screens/lock_screen.dart';
import 'package:idle_logout_sample/utils.dart';

final navigatorKey = GlobalKey<NavigatorState>();

void main() {
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({super.key});

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return IdleLogout(
      params: Params(
        debug: true,
        backgroundTimeout: const Duration(seconds: 15),
        timeout: const Duration(seconds: 10),
        isLoggedIn: isLoggedIn,
        isLockedOut: isLockedOut,
        onLockedOut: onLockedOut,
      ),
      child: MaterialApp(navigatorKey: navigatorKey, home: const HomeScreen()),
    );
  }

  Future<void> onLockedOut() async {
    debugPrint('User logged out due to inactivity');
    LocalStorage.isLockedOut = true;

    await navigatorKey.currentState?.pushReplacement(MaterialPageRoute<void>(builder: (_) => const LockScreen()));
  }

  Future<bool> isLoggedIn() async {
    // write your in-app logic for checking if your app is logged in
    return LocalStorage.userLoggedIn;
  }

  Future<bool> isLockedOut() async {
    // write your in-app logic for checking if your app is locked out
    return LocalStorage.isLockedOut;
  }
}
6
likes
160
points
225
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Automatic inactivity-based logout trigger for Flutter applications with configurable timeout detection.

Homepage
Repository (GitHub)
View/report issues
Contributing

License

MIT (license)

Dependencies

flutter

More

Packages that depend on idle_logout