MAUI App Icon Not Showing in IOS and Broken Icon in Android

Renesh Raj 0 Reputation points
2025-05-12T11:30:24.8966667+00:00

I have created a MAUI application for iOS and Android. The application is working successfully, but the app icon is not displaying correctly. Instead, the default .NET app icon is shown, and on Android, it appears inaccurately.

Project Settings

<ItemGroup>

	***`<!-- App Icon -->`***

	***`<MauiIcon Include="Resources\AppIcon\appicon.svg" Color="#ffffff" />`***

	***`<!--TintColor="#003366" -->`***

	***`<!-- Splash Screen -->`***

	***`<MauiSplashScreen Include="Resources\Splash\splash.svg" Color="#003366" BaseSize="512,512" />`***

	***`<!-- Images -->`***

	***`<MauiImage Include="Resources\Images\*" />`***

	***`<!-- Custom Fonts -->`***

	***`<MauiFont Include="Resources\Fonts\*" />`***

	***`<!-- Raw Assets (also remove the "Resources\Raw" prefix) -->`***

	***`<MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />`***

***`</ItemGroup>`***

Android Manifest

<application

android:icon="@mipmap/appicon"

android:roundIcon="@mipmap/appicon_round"

android:label="LQMS"

android:supportsRtl="false"

android:networkSecurityConfig="@xml/network_security_config"

tools:replace="android:label,android:supportsRtl,android:icon,android:roundIcon" >

Info Plist

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

<dict>

<key>LSRequiresIPhoneOS</key>

<true/>

<key>UIDeviceFamily</key>

<array>

<integer>1</integer>

<integer>2</integer>

</array>

<key>UIRequiredDeviceCapabilities</key>

<array>

<string>arm64</string>

</array>

<key>UISupportedInterfaceOrientations</key>

<array>

<string>UIInterfaceOrientationPortrait</string>

<string>UIInterfaceOrientationLandscapeLeft</string>

<string>UIInterfaceOrientationLandscapeRight</string>

</array>

<key>UISupportedInterfaceOrientations~ipad</key>

<array>

<string>UIInterfaceOrientationPortrait</string>

<string>UIInterfaceOrientationPortraitUpsideDown</string>

<string>UIInterfaceOrientationLandscapeLeft</string>

<string>UIInterfaceOrientationLandscapeRight</string>

</array>

<key>XSAppIconAssets</key>

<string>Assets.xcassets/appicon.appiconset</string>

<key>CFBundleIdentifier</key>

<string>com.example.erp</string>

<key>UIRequiresFullScreen</key>

<true/>

<key>UIStatusBarStyle</key>

<string>UIStatusBarStyleLightContent</string>

<key>UIBackgroundModes</key>

<array>

<string>audio</string>

<string>location</string>

<string>external-accessory</string>

<string>bluetooth-central</string>

<string>fetch</string>

<string>remote-notification</string>

</array>

<key>NSAppTransportSecurity</key>

<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>

<string>You are about to use location!</string>

<key>NSLocationWhenInUseUsageDescription</key>

<string>This app needs access to your location to provide location-based features.</string>

<key>NSLocationAlwaysUsageDescription</key>

<string>This app needs location access even in background for accurate service.</string>

<key>NSCameraUsageDescription</key>

<string>This app needs access to the camera to take photos.</string>

<key>NSPhotoLibraryUsageDescription</key>

<string>This app needs access to photos.</string>

<key>NSMicrophoneUsageDescription</key>

<string>This app needs access to microphone.</string>

<key>NSPhotoLibraryAddUsageDescription</key>

<string>This app needs access to the photo gallery.</string>

<key>Custom Property</key>

<string>The [app name] wants to use your microphone to record audio.</string>

<key>LSApplicationQueriesSchemes</key>

<array>

<string>lyft</string>

<string>fb</string>

</array>

<key>FirebaseAppDelegateProxyEnabled</key>

<false/>

<key>UIUserInterfaceStyle</key>

<string>Light</string>

<key>NSCalendarsUsageDescription</key>

<string>This app uses calendars to create events and alerts.</string>

<key>ITSAppUsesNonExemptEncryption</key>

<false/>

<key>UIFileSharingEnabled</key>

<true/>

<key>LSSupportsOpeningDocumentsInPlace</key>

<true/>

<key>NSAppleMusicUsageDescription</key>

<string>This app may requires access to Media Library to play voice notes.</string>

<key>UIViewControllerBasedStatusBarAppearance</key>

<true/>

<key>UISupportedExternalAccessoryProtocols</key>

<array>

<string>com.bixolon.protocol</string>

</array>

<key>NSBluetoothAlwaysUsageDescription</key>

<string>Communication with the printer for printing.</string>

<key>NSBluetoothPeripheralUsageDescription</key>

<string>Communication with the printer for printing.</string>

<key>CFBundleShortVersionString</key>

<string>1</string>

</dict>

</plist>

Android - Home Screen

User's image

IPAD 18 -Home Screen

User's image WhatsApp Image 2025-05-12 at 4.41.12 PM(1)

Developer technologies | .NET | .NET MAUI
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. Tony Dinh (WICLOUD CORPORATION) 725 Reputation points Microsoft External Staff
    2025-08-13T06:20:34.16+00:00

    Hi Renesh Raj!

    I have looked at your provided code, here are some potential problems I can give:

    On Android:

    The main reasons are:

    • SVG Format Issues: The appicon.svg file itself might have an unsupported element or be formatted in a way that the MAUI build system's vector-to-drawable converter doesn't understand. A common issue is using a complex SVG with gradients or filters that are not supported.
    • Build Issues: Sometimes, a clean and rebuild of the solution is needed to force the build process to regenerate the icon assets.
    • Broken SVG draw: Check if your appicon.svg has an appropriate path for size. You can check this by using Android Asset Studio - import your SVG file and see if it's correctly displayed.

    On iOS:

    Your Info.plist file has this key: <key>XSAppIconAssets</key><string>Assets.xcassets/appicon.appiconset</string>

    The most likely reason for the default .NET icon on iOS is that the Assets.xcassets/appicon.appiconset folder is either not being generated correctly, or the files inside are missing or corrupted.

    These issues all point back to a potential issue with the source appicon.svg file or a build process failure.

    Solutions

    1. Check your SVG file: Open your Resources\AppIcon\appicon.svg file in a text editor. Ensure it is a simple, clean SVG. Complex elements like gradients, transforms, or filters can cause build failures. A good test is to simplify the SVG to a basic shape and color, then try rebuilding. If it works, the issue is with your original SVG's complexity.
    2. Clean and Rebuild the Project: This is a crucial step. Right-click on your project in Visual Studio and select Clean. Then, right-click and select Rebuild. This forces the MAUI build system to re-process all assets from scratch.
    3. Try a different SVG: If the above steps fail, try replacing your appicon.svg with a very basic, known-good SVG, like a simple circle or square. If this works, it confirms that your original SVG is the root cause.
    4. Check for Caching Issues: On the device or emulator, sometimes the old icon is cached. Try uninstalling the app completely from the device before redeploying.

    By following these steps, you can pinpoint whether the issue is with your source SVG, the build process, or a caching problem on the device. The most common culprit is a problem with the SVG file itself.

    I hope this help! Let me know if you stuck anywhere else so I can assist you!

    0 comments No comments

  2. Starry Night 30 Reputation points
    2025-08-13T08:00:12.5933333+00:00

    On Android, you can try to update your Visual Studio to the latest version and try again.

    There are some similar issues about this, for example:

    Android MauiIcon resizetizering issue and Multiple Fixes for Resizetizer (esp. Android App Icons)

    And you can try to set property ForegroundScale:

    <MauiIcon Include="Resources\AppIcon\appicon.png" ForegroundScale="0.65" />
    

    On iOS:

    Please try the following steps:

    • delete app from device/emulator and clear all data
    • clean solution
    • reboot device/emulator (this step is important)
    • build and deploy app

    Refer: MAUI appicon and splash not updating on iOS device.

    0 comments No comments

Your answer

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