環境
Flutter + Firebase + Providerを MVVMモデルで作っていた
問題
FutureBuilder
- StreamBuilder
- FutureBuilder
のようなbuilder 処理がかなりのネストになっていたせいで、
-
Navigator.push後の画面表示や、初回表示(kill後アプリ表示) で、15sくらい処理がローディング状態であった
解決策
AsyncMemoizerを使う
一番top level のFutureBuilder にて、AsyncMemoizer を使ったら、格段に処理が速くなった
AsyncMemoizer の使い方は、 ここらへんの記事 を参照