是否有办法终止用户状态在颤振时去后台



我正在开发一个应用程序,其中一个请求是,当用户从应用程序转到后台,转到另一个应用程序或类似的东西时,当他们重新打开它时,应用程序必须再次进入启动屏幕所以他们再次执行pin码。

关于如何做这件事,我找不到答案。这可能吗?

useWidgetsBindingObserver它有助于监听应用程序的生命周期,

class FooClass extends State<FooClass> with WidgetsBindingObserver {
// ... some code
}

on initState监听应用状态变化

WidgetsBinding.instance.addObserver(this);

覆盖didChangeAppLifecycleState当应用生命周期发生变化时,这个方法将在当前生命周期状态下调用

@override
void didChangeAppLifecycleState(AppLifecycleState state) {
switch (state) {
case AppLifecycleState.inactive:
case AppLifecycleState.paused:
case AppLifecycleState.detached:
case AppLifecycleState.resumed:

}
}

,最后在dispose中删除侦听器

WidgetsBinding.instance.removeObserver(this);

查看更多详细信息https://api.flutter.dev/flutter/widgets/WidgetsBindingObserver-class.html