我试图在这里介绍一些基本的东西。场景:我正在使用init()检查isLocationServiceEnabled上的GPS状态。如果GPS关闭,我将显示一个弹出窗口,该弹出窗口使用AndroidIntent重定向到“位置”设置。如果没有打开GPS就回击,我想在我的应用程序进入前台时捕获事件。我猜想它与生命周期有关,并尝试如下所示,在控制台上什么也没打印

    AppLifecycleState _notification;

    @override
    void didChangeAppLifecycleState(AppLifecycleState state) {
      setState(() {
        _notification = state;
        print('onResumed called 1');
        print(_notification);
      });
      if( state == AppLifecycleState.resumed){
        print('onResumed called 2');
      }
    }

我在这里想念什么吗?

最佳答案

您是否使用WidgetsBindingObserver扩展了类,如下所示:

class _WhateverWidget extends State<WhateverWidget> with WidgetsBindingObserver

然后像这样初始化实例:

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

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

07-24 07:25