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引擎仍然有用");
}
}