squareone_ MCP

~/squareone ❯ Android · adaptive + themed

Android adaptive icon generator

Get every launcher icon Android needs from one image: legacy and round mipmaps, 108dp adaptive layers, the Android 13 themed icon and the 512px Play Store icon. The preview shows your icon under real launcher masks.

Drop your icon artwork or tap to browse

Square PNG or SVG, ideally 1024×1024px or larger

Appearance

100%

100% fits the icon. Logos usually look best at 70–85%; Android keeps the artwork inside the 72dp visible area of its 108dp layers.

Platforms

Android

Themed iconAndroid 13+ monochrome layer
optional

A transparent one-color glyph. Leave empty to derive it from your artwork.

Transparent legacy iconsAndroid 7 and older only
@mipmap/…

upload artwork to see your icon here

▸ app-icons.zip

Upload artwork to generate the icons.

How Android launcher icons work

Since Android 8 (API 26) launchers use adaptive icons: a foreground and a background layer, each 108×108dp. The launcher cuts them with its own mask (circle, squircle, rounded square…) and shows only the inner 72dp. Content outside the central 66dp may be cut off or move during animations.

Android 13 added themed icons. If the adaptive icon has a <monochrome> layer, users who turn on themed icons see it colored to match their wallpaper. Without it, your app keeps its colorful icon among themed ones.

Android icon sizes

DensityLegacy 48dpAdaptive layer 108dp
mdpi48 px108 px
hdpi72 px162 px
xhdpi96 px216 px
xxhdpi144 px324 px
xxxhdpi192 px432 px
Google Play512 × 512 px

Add the icons to your app

  1. Delete the existing ic_launcher* files in app/src/main/res/mipmap-* (especially .webp ones).
  2. Copy the res folder from the ZIP into app/src/main/res.
  3. Check that the manifest points to the icons:
AndroidManifest.xml
<application
    android:icon="@mipmap/ic_launcher"
    android:roundIcon="@mipmap/ic_launcher_round"
    ...>

The adaptive icon XML with the themed layer:

res/mipmap-anydpi-v26/ic_launcher.xml
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
    <background android:drawable="@color/ic_launcher_background"/>
    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
    <monochrome android:drawable="@mipmap/ic_launcher_monochrome"/>
</adaptive-icon>

Upload play-store-512.png in Google Play Console under Main store listing. All sizes: app icon size cheat sheet.

Frequently asked questions

What size is an Android adaptive icon?+

Both layers are 108x108dp (432px at xxxhdpi). Launchers show the inner 72dp through a mask and may move the layers for effects, so keep important content inside the central 66dp.

How do I enable Android 13 themed icons?+

Add a <monochrome> layer to the adaptive icon XML in mipmap-anydpi-v26. Android only uses its alpha channel and colors it with the user's wallpaper palette. SquareOne puts the layer in ic_launcher.xml and ic_launcher_round.xml.

Why does the build fail with duplicate resources?+

New Android Studio projects ship ic_launcher icons as .webp. If you copy PNGs with the same name next to them, the build fails. Delete the old .webp launcher files before copying the new ones.

Do I still need the legacy PNG icons?+

Only for Android 7.1 and older, which don't support adaptive icons. They are tiny and harmless, so SquareOne includes them together with the round variants.