デバッグモードでエラーや赤い画面がない場合でも、リリースモードでAndroidの灰色の画面をフラッター

Nov 22 2020

Androidの実デバイスのスプラッシュ画面の直後に起動時に灰色の画面が表示されます。私はすべてのエラーまたは赤い画面を解決し、その後再試行しましたが、それでも同じままです。

注:ストアをプレイするために、このアプリの前にこのアプリの2つのバージョンをリリースしました。したがって、これは最初のものではありません。

私のログ

Flutter run key commands.
h Repeat this help message.
c Clear the screen
q Quit (terminate the application on the device).
I/flutter (24661):                              <-- stops here nothing after this

回答

JohnJoe Nov 23 2020 at 05:57

デバッグモードではうまく機能するが、リリースモードで 機能ない場合あります。ターミナルで以下のコマンドを実行すると、そのエラーをキャッチできます。

 flutter run --release 

コマンドはリリースモードにコンパイルされます。灰色の画面が発生した場合は、デバッグコンソールを確認できます。

Jagadish Nov 26 2020 at 07:14

UIにエラーがなかったため、何も機能しませんでした。エラーは、メインのアプリの最初にありました。追加したawaitFirebase.initializeApp();は奇跡のように働いた。

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  SystemChrome.setSystemUIOverlayStyle(
      SystemUiOverlayStyle(statusBarColor: Colors.transparent));
  **await** Firebase.initializeApp(); //adding await solved the problem
  SharedPreferences.getInstance().then((prefs) {
    var brightness = SchedulerBinding.instance.window.platformBrightness;
    if (brightness == Brightness.dark) {
      prefs.setBool('darkMode', true);
    } else {}
    var darkModeOn = prefs.getBool('darkMode') ?? false;
    runApp(
      ChangeNotifierProvider<ThemeNotifier>(
        create: (_) => ThemeNotifier(darkModeOn ? darkTheme : lightTheme),
        child: MaterialApp(
          home: root(),
        ),
      ),
    );
  });
}