我们在做开发时候通常需要监听app进入了后台或者前台,来处理一些状态.flutter的这个监听怎么处理呢?
继承并在初始化方法中声明;直接上代码;
class PayAction extends SySPayAction with WidgetsBindingObserver {
@override
void initParams() {
super.initParams();
WidgetsBinding.instance.addObserver(this);
}
}
重写方法进行监听:
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
switch (state) {
case AppLifecycleState.inactive:
break;
case AppLifecycleState.resumed: //从后台切换前台,界面可见
break;
case AppLifecycleState.paused: // 界面不可见,后台
break;
case AppLifecycleState.detached: // APP结束时调用
break;
}
}
销毁:
@override void dispose() { super.dispose(); WidgetsBinding.instance.removeObserver(this); //销毁观察者 }
网友评论