【发布时间】:2020-04-27 00:35:56
【问题描述】:
我参与了 FlutterSound 项目,该项目作为一个包提供,其中包含一个 api,就本问题而言,它不包含小部件。
API 需要在应用程序更改其状态时处理事件(AppLifecycleState.pause/resume)。 (我们需要在应用暂停/恢复时停止/恢复音频)。
我可以看到如何使用 WidgetsBindingObserver 在小部件中执行此操作,但 api 需要相同的信息,而不必依赖小部件。
SchedulerBinding 类有一个方法 handleAppLifecycleStateChanged,它似乎提供了所需的信息,但不清楚如何在小部件之外实现这一点。
【问题讨论】:
-
我相信无论如何你必须至少有一个小部件才能启动你的应用程序。您认为您可以为此目的使用该小部件吗? (我也遇到了类似的问题,想知道是否有直接的方法来检索应用程序生命周期状态;例如:getAppLifecycleState()。似乎找不到类似的东西。如果没有这样的东西,我会有利用我的应用程序的根小部件)
-
我正在构建一个可用作 API 的库。我不想强迫该库的用户必须使用我强加给他们的小部件。
-
感谢您的澄清。我为我的项目想出了一个解决方案;请在下面查看我的答案
标签: flutter application-lifecycle