Share via

Splash screen for Android is default .NET splash screen and not specified splash screen MAUI

Jai Holloway 110 Reputation points
2026-05-28T06:40:26.99+00:00

I have

<MauiSplashScreen Include="Resources\Splash\splash.png" BaseSize="128,128" />

In my csproj., but the android splash screen is the default purple .NET splash screen. It works fine in iOS, but not on android. What would be causing this?

Developer technologies | .NET | .NET Multi-platform App UI
0 comments No comments

2 answers

Sort by: Most helpful
  1. AI answer

    2026-05-28T06:40:45.9833333+00:00

    On Android, .NET MAUI will only show the custom splash screen if all of the following are true:

    1. The splash image is correctly registered as a MAUI splash screen resource.
    2. The Android activity/manifest is using Maui.SplashTheme.
    3. The file name complies with Android resource naming rules.

    Check these points:

    1. Confirm the resource and build action
      • The splash file should be under Resources\Splash\ and have build action MauiSplashScreen.
      • In the project file it should look like:
             <ItemGroup>
               <MauiSplashScreen Include="Resources\Splash\splash.png" BaseSize="128,128" />
             </ItemGroup>
        
      • Ensure there is no other <MauiSplashScreen ...> entry pointing to a different image that could override this.
    2. Ensure the file name is Android‑valid
      • Android resource naming rules apply to splash screen files: the file name must be lowercase, start and end with a letter, and contain only letters, digits, or underscores.
      • For example, splash.png is valid; Splash.png, splash-screen.png, or ******@2x.png can cause Android to fall back to the default purple splash.
    3. Verify the Android theme is not overridden
      • MAUI uses Maui.SplashTheme by default to show the splash screen. If the activity or manifest overrides the theme, Android may ignore the MAUI-generated splash and show the default.
      • MainActivity should look like:
             [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true,
                       ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation |
                                             ConfigChanges.UiMode | ConfigChanges.ScreenLayout |
                                             ConfigChanges.SmallestScreenSize)]
             public class MainActivity : MauiAppCompatActivity
             {
             }
        
      • In Platforms/Android/AndroidManifest.xml, the <application> element should not set a different theme that replaces Maui.SplashTheme.
    4. Clean and rebuild
      • After fixing naming or theme issues, perform a Clean and then Rebuild, and if needed uninstall the app from the emulator/device so the new resources are picked up.

    If the image is correctly registered as MauiSplashScreen, the file name follows Android rules, and Maui.SplashTheme is used, Android will use the specified splash instead of the default purple screen.


    References:

    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

    1 person found this answer helpful.
  2. Nancy Vo (WICLOUD CORPORATION) 4,845 Reputation points Microsoft External Staff Moderator
    2026-05-28T08:19:42.8266667+00:00

    Hello @Jai Holloway ,

    Thanks for your question.

    You can refer to following workarounds:

    1. Open your .csproj file and make sure you have only one <MauiSplashScreen> entry, and that it includes a Color attribute:
    <ItemGroup>
        <MauiSplashScreen Include="Resources\Splash\splash.png" Color="#FFFFFF" BaseSize="128,128" />
    </ItemGroup>
    
    1. Check your splash.png file

    Android is pickier than iOS about splash images. Make sure:

    • The Build Action is set to MauiSplashScreen.
    1. Open Platforms/Android/MainActivity.cs and confirm the Theme attribute is @style/Maui.SplashTheme:
    [Activity(
        Theme = "@style/Maui.SplashTheme",
        MainLauncher = true,
        ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)]
    public class MainActivity : MauiAppCompatActivity
    {
    }
    

    If Theme is missing or points to something else (like a custom theme that doesn't inherit from Maui.SplashTheme), Android will fall back to the default purple splash.

    1. Check Platforms/Android/Resources/values/styles.xml

    If this file exists, it can override your splash. Open it and look for Maui.SplashTheme. It should look like this:

    <?xml version="1.0" encoding="utf-8" ?>
    <resources>
        <style name="Maui.SplashTheme" parent="Theme.SplashScreen">
            <item name="windowSplashScreenBackground">@color/colorPrimary</item>
            <item name="windowSplashScreenAnimatedIcon">@drawable/splash</item>
            <item name="postSplashScreenTheme">@style/Maui.MainTheme</item>
        </style>
    </resources>
    

    If the file references a hardcoded drawable like @drawable/splash_dotnet_bot or similar, please delete that line.

    1. Clear the cache since Android aggressively caches the old splash.
    • Close visual studio
    • Please delete these folders: bin/ and obj/
    • Uninstall the app from your Android device or emulator
    • Reopen Visual Studio
    • Clean the solution → Rebuild the solution
    • Run/deploy the app again
    1. If it still does not work, please wipe the emulator:
    • Open Android Device Manager
    • Click your emulator → Wipe Data
    • Or create a brand new emulator and deploy fresh
    1. Finally, check your folder structure again. The file must live at Resources/Splash/splash.png (matching the path in .csproj).

    Please try these steps. You do not need to try all of them - these are alternative workarounds. If one resolves the issue, you can skip the rest.

    Hope this helps! If my answer was helpful - kindly follow the instructions here so others with the same problem can benefit as well.

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.