1

私のフラッター アプリにはConnectivityStatus、ラズベリー パイへのアプリの現在の接続状態を表示するウィジェットがあります。initState私のウィジェットでは、タイマーをサブスクライブして 5 秒ごとに接続をチェックし、それに応じて状態を更新してから、廃棄時にサブスクライブを解除します。

問題は、スタック ナビゲーターのセットアップなどで複数の画面がConnectivityStatusウィジェットを使用する場合、どちらのインスタンスも破棄されていないため、2 つの同時サブスクリプションが発生することです。これにより、多くの冗長で不要なリクエストが発生します。

私が本当に望んでいるのは、ウィジェットの単一のインスタンスを複数の画面で共有するか、複数のインスタンスがアクセスできる 1 つのグローバル状態にすることです。

どうすればこれを達成できますか、または私の問題に対する他の推奨される解決策は何ですか?

4

3 に答える 3