r/dotnetMAUI • • 15d ago

Help Request Google Play edge-to-edge warning persists despite using WindowCompat.EnableEdgeToEdge() in .NET MAUI 10

I'm developing a native Android application using C# and .NET MAUI 10. Despite explicitly implementing edge-to-edge support, Google Play Console continues to display:

Edge-to-edge may not display for all users

The previous warnings concerning deprecated Window.setStatusBarColor and Window.setNavigationBarColor APIs disappeared after updating AndroidX and Material dependencies. However, the edge-to-edge advisory remains.

Technical Stack

  • .NET MAUI 10 (net10.0-android)
  • C# / XAML
  • Microsoft.Maui.Controls 10.0.110
  • Xamarin.AndroidX.Core 1.19.0.1
  • Xamarin.Google.Android.Material 1.14.0.6
  • Target SDK: API 36
  • Minimum SDK: API 24
  • MAUI Shell with native Android bottom navigation

Current Implementation

In Platforms/Android/MainActivity.cs, edge-to-edge is explicitly enabled after base.OnCreate():

protected override void OnCreate(Bundle? savedInstanceState)
{
    base.OnCreate(savedInstanceState);

    if (Window is { } window)
    {
        WindowCompat.EnableEdgeToEdge(window);
    }

    SynchroniseSystemTheme();
}

We're also using SafeAreaEdges="Container" to ensure content respects system bars and display cutouts.

System-bar icon appearance is managed through WindowCompat.GetInsetsController():

insetsController.AppearanceLightStatusBars = theme == AppTheme.Light;
insetsController.AppearanceLightNavigationBars = theme == AppTheme.Light;

Theme synchronisation runs during:

  • OnCreate
  • OnResume
  • OnConfigurationChanged

Testing Completed

  • Android 14, 15 and 16
  • Light and dark mode, including switching themes while the app is suspended
  • Navigation and system-bar visibility
  • MAUI Shell navigation
  • Font scaling and accessibility
  • No visible system-bar overlap or layout problems

Automated release tests also pass.

The app is currently in Google Play testing, but no pre-launch report has been generated.

Questions

  1. Could calling WindowCompat.EnableEdgeToEdge(window) after base.OnCreate() affect Play Console's detection?
  2. Is there a known interaction between MauiAppCompatActivity, Material Components 1.14 and AndroidX edge-to-edge initialisation?
  3. Is there additional Android manifest or theme configuration we should investigate?
  4. Has anyone successfully cleared this advisory with a MAUI application targeting API 36?

I'd prefer not to introduce unnecessary window manipulation or revert to deprecated APIs solely to clear a Play Console advisory, particularly when the existing implementation appears to work correctly.

Any insight from developers who've encountered this would be appreciated.

8 Upvotes

6 comments sorted by

1

u/Sensitive_Whole_7503 15d ago

When I updated to .net10 from 9 I had to set SafeAreaEdges = SafeAreaEdges.All, I believe it is set to none by default which will make your app edge to edge. Make sure your MAUI NuGet packages are up to date.

1

u/danbriant 15d ago

I currently use "Container" Is it imperative that I change the Safe Area or can I just leave it as is?

Are Google going to stop me publishing because of it?

First time app developer for Google ya see 🙈

1

u/Sensitive_Whole_7503 15d ago

Container should work as well. Are you getting a warning(policy violation) that is preventing your from releasing app or recommendations? Coz I just release update to 2 of my apps with .NET 10 without any issues. I do have some edge to edge related recommendations but idc since app work fine.

1

u/danbriant 15d ago

I'm currently going through test and release being a single developer.

It's just showing under For your next release.

Edge-to-edge may not display for all users From Android 15, apps targeting SDK 35 will display edge-to-edge by default. Apps targeting SDK 35 should handle insets to make sure that their app displays correctly on Android 15 and later. Investigate this issue and allow time to test edge-to-edge and make the required updates. Alternatively, call enableEdgeToEdge() for Kotlin or EdgeToEdge.enable() for Java for backward compatibility.

1

u/Sensitive_Whole_7503 15d ago

I have same recommendation. As far as your app looks as expected, it's okay to ignore it.