2021-11-15 14:29:31 +00:00
|
|
|
import 'package:logging/logging.dart';
|
2023-02-08 17:00:52 +00:00
|
|
|
import 'package:media_extension/media_extension_action_types.dart';
|
2021-11-15 14:29:31 +00:00
|
|
|
|
|
|
|
class AppLifecycleService {
|
|
|
|
final _logger = Logger("AppLifecycleService");
|
|
|
|
|
|
|
|
bool isForeground = false;
|
2023-02-21 14:32:29 +00:00
|
|
|
MediaExtentionAction mediaExtensionAction =
|
|
|
|
MediaExtentionAction(action: IntentAction.main);
|
2021-11-15 14:29:31 +00:00
|
|
|
|
|
|
|
static final AppLifecycleService instance =
|
|
|
|
AppLifecycleService._privateConstructor();
|
|
|
|
|
|
|
|
AppLifecycleService._privateConstructor();
|
|
|
|
|
2023-02-21 14:32:29 +00:00
|
|
|
void setMediaExtensionAction(MediaExtentionAction mediaExtensionAction) {
|
|
|
|
_logger.info("App invoked via ${mediaExtensionAction.action}");
|
|
|
|
this.mediaExtensionAction = mediaExtensionAction;
|
2023-02-08 17:00:52 +00:00
|
|
|
}
|
|
|
|
|
2022-03-07 20:18:50 +00:00
|
|
|
void onAppInForeground(String reason) {
|
|
|
|
_logger.info("App in foreground via $reason");
|
2021-11-15 14:29:31 +00:00
|
|
|
isForeground = true;
|
|
|
|
}
|
|
|
|
|
2022-03-07 20:18:50 +00:00
|
|
|
void onAppInBackground(String reason) {
|
|
|
|
_logger.info("App in background $reason");
|
2021-11-15 14:29:31 +00:00
|
|
|
isForeground = false;
|
|
|
|
}
|
|
|
|
}
|