1234567891011121314151617181920212223242526272829303132 |
- import 'package:flutter/foundation.dart';
- import 'package:flutter/widgets.dart';
- class LifecycleEventHandler extends WidgetsBindingObserver {
- final AsyncCallback? resumeCallBack;
- final AsyncCallback? suspendingCallBack;
- LifecycleEventHandler({
- this.resumeCallBack,
- this.suspendingCallBack,
- });
- @override
- Future<void> didChangeAppLifecycleState(AppLifecycleState state) async {
- switch (state) {
- case AppLifecycleState.resumed:
- if (resumeCallBack != null) {
- await resumeCallBack!();
- }
- break;
- case AppLifecycleState.inactive:
- case AppLifecycleState.paused:
- case AppLifecycleState.detached:
- if (suspendingCallBack != null) {
- await suspendingCallBack!();
- }
- break;
- }
- }
- }
|