我想退出我的申请。我已经实现了WillPopScope,但是好像根本没有调用onWillPop函数。我尝试了许多想法,例如将WillPopScope与Scaffold交换,更改了函数的返回值,但看起来好像并没有按预期工作。
我的代码:
我不确定这是否是应报告为错误的错误,或者我做错了什么。乐意根据要求提供更多代码。
我试过了:
exit(0);
Navigator.of(context).pop();
SystemChannels.platform.invokeMethod('SystemNavigator.pop');
提前致谢!
最佳答案
首先,永远不要使用exit(0)
。在Android环境中可能很好,但是如果Apple以编程方式自行关闭,则Apple不允许在应用商店中使用该应用。
在onWillPop
的docs中,它明确提到函数应解析为 bool 值。
Future<bool> _willPopCallback() async {
// await showDialog or Show add banners or whatever
// then
return Future.value(true);
}
仅当当前页面是导航堆栈的根目录时,此方法才有效。