flutter 中,除了了解组件生命周期,有时候还会需求用到使用活动状况,当咱们需求调查使用状况做出某种行为时,那么就需求了解他了,例如:咱们想在使用进入前台时,检测用户行为,那么就不可避免会用到

//使用时,类需求多继承子 WidgetsBindingObserver 类,多继承,因而用with
class _MyHomePageState extends State<MyHomePage> with WidgetsBindingObserver
@override
void initState() {
  //监听application生命周期
  WidgetsBinding.instance.addObserver(this);
  super.initState();
}
@override
void dispose() {
  //组件毁掉时,移除监听,否则不会主动移除
  WidgetsBinding.instance.removeObserver(this);
  super.dispose();
}
//使用状况改变后的回调
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
  super.didChangeAppLifecycleState(state);
  if (state == AppLifecycleState.resumed) {
    print("app进入前台");
  } else if (state == AppLifecycleState.inactive) {
    print("app在前台但不呼应事情,比方电话,touch id等");
  } else if (state == AppLifecycleState.paused) {
    print("app进入后台");
  } else if (state == AppLifecycleState.detached) {
    print("没有宿主视图但是flutter引擎仍然有用");
  }
}