Flutter app show grey screen in release mode but works fine in debug mode Instance of 'DiagnosticsProperty<void>' Flutter app show grey screen in release mode but works fine in debug mode Instance of 'DiagnosticsProperty<void>' android android

Flutter app show grey screen in release mode but works fine in debug mode Instance of 'DiagnosticsProperty<void>'


When you run your app in debug mode and when something goes wrong, you see the scary red error screen with logs. In release mode, you just see a grey screen.

Now, when you ran your app in debug mode, at times there are some errors which are thrown but we mistakenly ignore them as we see the app is running perfectly on screen but if you open your logs in debug mode, you will see some error messages.

For me it was something like this:

════════ Exception caught by widgets library ═══════════════════════════════════════════════════════The following assertion was thrown while applying parent data.:Incorrect use of ParentDataWidget.The ParentDataWidget Expanded(flex: 1) wants to apply ParentData of type FlexParentData to a RenderObject, which has been set up to accept ParentData of incompatible type StackParentData.Usually, this means that the Expanded widget has the wrong ancestor RenderObjectWidget. Typically, Expanded widgets are placed directly inside Flex widgets.The offending Expanded is currently placed inside a Stack widget.

My app runs perfectly in debug mode while Flutter still throws this error in the background.

Now when I run the app in release mode, I see a grey screen which is different from my perfectly running app in debug mode.

When I checked the logs, I see the error message:

Flutter app show grey screen in release mode but works fine in debug mode Instance of 'DiagnosticsProperty<void>'

So the solution?

Run you app in debug mode and check logs, I am sure you will find the problem there. Changing Flutter channels won't help as long as there are errors in your code.


first, you check AndroidManifest.xml(AndroidManifest.xml file for debug mode is different from AndroidManifest.xml file for release mode.check directory:

android\app\src\debug\AndroidManifest.xml

and directory:

android\app\src\main\AndroidManifest.xml

even you can create for release:

android\app\src\release\AndroidManifest.xml

try with add

<uses-permission android:name="android.permission.INTERNET" />

to your target AndroidManifest.xml).

red screen in debug mode it's like grey screen in release modthat means you have an error code but for debug mode maybe this error be like warning and could run and you don't see any problem in your app in debug mode!but for release mode, you should fix it!like the case for me:I'm trying put Position Widget in Container Widget and I get this error :

Another exception was thrown: Instance of ‘DiagnosticsProperty’Incorrect use of ParentDataWidget.

i fix it by change Container to Stack.


In my case, I was using the Expanded widget inside Stack on one of my widgets.

Wrong Approach

Stack(     children: [          Expanded(child: buildHeader(context)),          Align()     ]),

Correct Approach

Stack(     children: [          buildHeader(context),          Align()     ]),

I was having this problem on both, android and iOS, platforms and this is how I resolved it.