EARHORNMUSIC UPnP · Android TV · Phones · Android Auto · GNU/Linux
Release 0.5.0

ic_launcher.xml

<?xml version="1.0" encoding="utf-8"?>
<!--
  Adaptive icon geometry (the numbers that matter):
    · layer canvas ......... 108dp
    · mask viewport ........ ~72dp visible
    · SAFE ZONE ............ 66dp circle — the largest area no OEM mask
                             (circle / squircle / rounded-square / teardrop)
                             ever crops.
  For a circular full-bleed logo the correct size is exactly the safe
  zone: 66dp of 108dp = 61.11% of the layer. ic_launcher_foreground.png
  is generated to precisely that geometry (badge 264px centered on a
  432px transparent canvas). The previous <inset 25%> rendered the badge
  at 54dp — only 82% of its allowed size — which is why it floated small
  inside the launcher/splash circle. Do NOT re-wrap this foreground in
  an inset; the spacing is baked into the asset, pixel-exact.

  No <monochrome> layer on purpose: the badge is photographic, and a
  themed-icon silhouette derived from it would collapse to a featureless
  disc. Android 13 themed launchers fall back to the tinted-background
  treatment, which reads better than a blank circle.
-->
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
    <background android:drawable="@color/ic_launcher_background" />
    <foreground android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>