当应用程序处于前台时,我不想显示通知。
如何查看我的应用程序的实时状态?

最佳答案

在State 类中,您需要实现WidgetsBindingObserver接口(interface)并监听小部件状态更改。像这样的东西:

class _MyHomePageState extends State<MyHomePage> with WidgetsBindingObserver {
  AppLifecycleState _notification;
  @override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    setState(() {
      _notification = state;
    });
  }

  @override
  initState() {
    super.initState();
    WidgetsBinding.instance.addObserver(this);
    ...
  }

  @override
  void dispose() {
    WidgetsBinding.instance.removeObserver(this);
    super.dispose();
  }
}

然后,当您想知道什么是状态时,请检查_notification.index属性。 _notification == null =>未发生状态更改,0-恢复,1-不 Activity ,2-暂停。

10-08 16:35