首页 > 解决方案 > Flutter 中的 onDestroy() 或 applicationWillTerminate() 类似的方法是什么?

问题描述

我是 Flutter 的新手。我正在开发我的一个演示 Flutter 应用程序。我在我的应用程序中创建了 3 个屏幕(登录、注册和主页)。我只是从登录屏幕导航到主屏幕。现在我想检查 - 我的应用程序是活动的还是关闭的?- 通过从 Android 和 IOS 中最近的应用程序中清除应用程序。我已经检查了AppLifecycleState.detached并且还检查了覆盖方法dispose()但是这些在用户杀死应用程序时没有调用。请帮助我如何知道我的应用程序被杀死了。我需要使用哪种方法。

我已将AppLifecycleState.paused用于其他进程。所以我想要任何其他方式来处理它。

在原生 Android 中,我们可以借助onDestroy()方法检查这一点,而在 iOS 原生应用程序中,我们可以借助applicationWillTerminate()进行检查。

我需要为 Flutter 使用哪种方法?

标签: androidflutter

解决方案


我找到了一种解决方案来检测应用程序是否被破坏。在颤振中,我们有一个方法名称 - dispose()在我的情况下,dispose()方法没有在应用程序销毁时被调用。所以我刚刚更新了我的dispose()方法并添加了 - @mustCallSuper @protected请参阅下面的代码。

 @mustCallSuper
  @protected
  void dispose() {
    // TODO: implement dispose
    WidgetsBinding.instance.removeObserver(this);

    print('dispose called.............');
    super.dispose();
  }

推荐阅读