Flutter 如何让我的颤振应用程序将用户返回操作系统主屏幕?

Flutter 如何让我的颤振应用程序将用户返回操作系统主屏幕?,flutter,Flutter,我正在开发一款具有锁定屏幕的应用程序,但在如何使其正常运行方面遇到了一些问题。现在,当用户暂停/恢复应用程序时,我正在使用didChangeAppLifecycleState导航到锁定屏幕。我还使用了WillPopScope截取并拒绝返回按钮。这种方法的问题是,按下后退按钮而什么也没发生,感觉不是很直观。理想情况下,我希望使用“后退”按钮将用户带出应用程序,并在锁定屏幕时返回操作系统主屏幕。我还想这样做,当用户成功解锁应用程序时,用户的路线历史记录将被保存 有没有办法完成我想做的事情,或者我应该

我正在开发一款具有锁定屏幕的应用程序,但在如何使其正常运行方面遇到了一些问题。现在,当用户暂停/恢复应用程序时,我正在使用
didChangeAppLifecycleState
导航到锁定屏幕。我还使用了
WillPopScope
截取并拒绝返回按钮。这种方法的问题是,按下后退按钮而什么也没发生,感觉不是很直观。理想情况下,我希望使用“后退”按钮将用户带出应用程序,并在锁定屏幕时返回操作系统主屏幕。我还想这样做,当用户成功解锁应用程序时,用户的路线历史记录将被保存


有没有办法完成我想做的事情,或者我应该接受后退按钮在锁屏上没有任何作用?

你可以在锁屏状态下创建一个标识符,并在
onWillPop
中检查标识符,如果用户在锁屏上按下后退按钮,退出应用程序

String identifier = "lockscreen";

bool onWillPop() {
  if (identifier == "lockscreen") {
    SystemNavigator.pop();
    SystemChannels.platform.invokeMethod('SystemNavigator.pop'); //preferred.*
    return true;
  }
}

:在iOS上,对该方法的调用被忽略,因为苹果的人机界面指南规定应用程序不应自行退出。

你能分享一些锁屏上的代码示例吗?这看起来像我想要的,假设它没有完全关闭活动并允许应用程序恢复。我今晚要试一试,然后回来报到!在尝试了这个之后,这并不是我所希望的。调用
SystemNavigator.pop()
实际上会终止应用程序。理想情况下,它将保留在内存中,以便用户可以返回锁屏。我猜这在弗利特是不可能的,所以我接受你的答案,因为这是最接近的匹配。