How to check if dark mode is enabled on iOS/Android using Flutter?


Asked by R2T8 on May 25, 2019 (source).

How can I check if dark mode is enabled in Android Q with Flutter?
I know how to set the dark mode, but I didn't find a way to check the background theme.
Here is the code to set the dark theme.

darkTheme: ThemeData.dark(),


Question answered by CopsOnRoad (source).

There are two ways:

  1. NO context required. Can be used in initState for example:

     var brightness = SchedulerBinding.instance!.window.platformBrightness;
     bool isDarkMode = brightness == Brightness.dark;
  2. context is required:

     var brightness = MediaQuery.of(context).platformBrightness;
     bool isDarkMode = brightness == Brightness.dark;