If a custom getx controller for a widget is having counter increment based on timer runs every certain seconds.
The problem is that the counter increment function keeps running even if app is in the background or screen locked.
I know how stop/cancel the timer but want to do it if the app is not active. So using GetX package how to get the app status like running, closed by user, running in background but not active on the screen, etc.
Thank you.
You can create a GetX class that extends SuperController
. This has 4 methods that you override to track the lifecycle of the app. Add your timer functions inside these methods to control it when app is in the background etc...
Check out the flutter AppLifecycleState docs for an explanation on each state.
class LifeCycleController extends SuperController {
@override
void onDetached() {}
@override
void onInactive() {}
@override
void onPaused() {}
@override
void onResumed() {}
}
Just initialize it in your main so its active from when the app starts.
void main() {
Get.put(LifeCycleController());
runApp(MyApp());
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With