반응형
질문
I don't want to show notification when the app is in foreground.
How can I check live state of my app?
답변
당신의 State<...> 클래스에서는 WidgetsBindingObserver 인터페이스를 구현하고 위젯 상태 변경을 듣도록해야합니다. 다음과 같이:
class _MyHomePageState extends State<MyHomePage> with WidgetsBindingObserver {
AppLifecycleState? _notification;
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
setState(() {
_notification = state;
});
}
@override
void initState() {
super.initState();
WidgetsBinding.instance?.addObserver(this);
...
}
@override
void dispose() {
WidgetsBinding.instance?.removeObserver(this);
super.dispose();
}
}
그런 다음 상태를 알고 싶을 때는 다음을 확인하십시오.
_notification.index 속성. _notification == null => 상태 변경이 발생하지 않음,
0 - 재개,
1 - 비활성,
2 - 일시 중지.
반응형
댓글