# DMC Launcher Icon – Adaptive Icon Layers ## Warum vorher ein weisser Rand entstand `flutter_launcher_icons` erzeugt ein Adaptive Icon **nur**, wenn `adaptive_icon_background` UND `adaptive_icon_foreground` gesetzt sind. Der `image_path` wird nicht automatisch als Vordergrund uebernommen. Ohne Adaptive Icon faellt Android auf die Alt-Behandlung zurueck: Es verkleinert das quadratische Bild und legt es auf weissen Grund, damit es in die Maskenform passt. Genau das war der weisse Kreis. ## Dateien | Datei | Inhalt | |---------------------------|-------------------------------------------| | `ic_background.png` | Deckend `#160E24` + M in der 66dp-Zone | | `ic_background_alt_A.png` | Alternative: M fuellt die sichtbaren 72dp | | `ic_foreground.png` | Transparent + weisses DC (Sicherheitszone)| | `ic_monochrome.png` | DC-Silhouette fuer Themed Icons | Alle 432x432 px (= 108dp bei xxxhdpi). SVG-Quellen liegen daneben. ## Warum das M nicht mehr randfuellend ist Die Maske zeigt nur die inneren 72 von 108 dp (288 von 432 px). Ein randfuellendes M verliert dadurch 72 px pro Seite. Gemessener Anteil des sichtbaren M: | Variante | Kreis | Squircle | Eckig | |-----------------------------|-------|----------|-------| | randfuellend (urspruenglich)| 31 % | 36 % | 40 % | | A – M fuellt die 72dp | 74 % | 90 % | 99 % | | B – M in der 66dp-Zone | 84 % | 97 % | 100 % | Ausgeliefert wird B, weil es in **jeder** Maskenform besser abschneidet als A. Wer das M naeher am Rand moechte, nimmt `ic_background_alt_A.png`. Geprueft: - Hintergrund vollstaendig deckend - Vordergrund max. 127 px vom Zentrum -> passt in die 132 px Sicherheitszone - Aeusseres 18dp-Band enthaelt nur Hintergrundfarbe ## pubspec.yaml ```yaml dev_dependencies: flutter_launcher_icons: ^0.14.4 flutter_launcher_icons: android: "launcher_icon" ios: true image_path: "assets/launcher/ic_playstore.png" adaptive_icon_background: "assets/launcher/ic_background.png" adaptive_icon_foreground: "assets/launcher/ic_foreground.png" adaptive_icon_monochrome: "assets/launcher/ic_monochrome.png" ``` Danach: ``` flutter clean dart run flutter_launcher_icons ``` `flutter clean` nicht weglassen - alte Icons werden sonst oft aus dem Cache weiterverwendet. ## Hinweise - `image_path` ist der Alt-/iOS-Pfad. Dafuer die eckige Vollversion nehmen (Y2_pink_dark_square), nicht die Ebenen. - Fuer den Play Store zusaetzlich 512x512 px, ohne Transparenz. - Das Benachrichtigungssymbol ist eine eigene Grafik: weiss auf transparent, in `drawable/`, nicht `mipmap/`. - Auf einem echten Geraet gegen mehrere Launcher pruefen (Samsung = Kreis, Pixel = Squircle).