直接上代码,复制可以直接使用,进行监控
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');