记录Flutter监控APP生命周期变化时回调

直接上代码,复制可以直接使用,进行监控

class HomeMain extends StatefulWidget {
  @override
  _HomeMain createState() => _HomeMain();
}

class _HomeMain extends State<HomeMain> with WidgetsBindingObserver {
@override
void initState() {
  super.initState();
  WidgetsBinding.instance!.addObserver(this); //添加观察者
}
  ///生命周期变化时回调
  /// resumed:应用可见并可响应用户操作
  ///  inactive:用户可见,但不可响应用户操作
  ///  paused:已经暂停了,用户不可见、不可操作
  ///  suspending:应用被挂起,此状态IOS永远不会回调
  @override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    // TODO: implement didChangeAppLifecycleState
    super.didChangeAppLifecycleState(state);
    switch(state){
      case AppLifecycleState.resumed:
// TODO: 从后台切换前台,界面可见.
        LogUtils.v('resumed');
        break;
      case AppLifecycleState.inactive:
        // TODO: 用户可见,但不可响应用户操作
        debugPrint('inactive');
        LogUtils.v('inactive');
       

猜你喜欢

转载自blog.csdn.net/wxx314165038/article/details/120956657