🤔
【Flutter】iOSの実機でビルドした時に真っ白な画面のまま動かなくなった時の対処法
背景
いつも通りコードを書いていて「ビルドしてみよー」と思ってVScodeのターミナルでflutter run
をしたらビルドには成功しているのに真っ白な画面(おそらくスプラッシュ画面)のまま動かなくなったので、対処法を調べていみました。
試したこと
-
flutter clean
してみる
大抵ビルド時のエラーはflutter clean
をしてからもう一度ビルドするとうまくいく気がしたので(違ったらごめんなさい...)flutter clean
してみました。
結果:うまくいきませんでした... -
flutter run --debug
、flutter run --release
をしてみる
みんプロさんの記事を参考にしてflutter run debug
やflutter run --release
をしてみました。
結果:うまくいきませんでした... -
runApp()の前に
WidgetsFlutterBinding.ensureInitialized();
を挿入する
この記事を参考にしてrunApp()の前にWidgetsFlutterBinding.ensureInitialized();を挿入してみました。
結果:うまくいきませんでした...
そもそもWidgetsFlutterBinding.ensureInitialized();はプラットフォーム (Android, iOSなど) の画面の向きの設定やロケールといったFlutter Engineの機能を利用する時に必要らしいです。そのような機能を利用するコードではなかったので必要ありませんでした。
対処法
結局、私は実機の電源を入れ直してビルドしてみたら解決しました。
真っ白な画面のまま動かなくなる原因はよくわかっていません...。なのでこの対処法で解決した理由も詳しくはわかっていません...。うーん、モヤモヤする。
Discussion