From 18ec32d21eaac82fa14c55d3ba497a90d05e2934 Mon Sep 17 00:00:00 2001 From: enricobuehler Date: Tue, 16 Jun 2026 16:02:49 +0200 Subject: [PATCH] feat(android): adaptive launcher icon with Material You themed-icon support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace the placeholder system icon with the Punktfunk brand mark (two overlapping violet circles, from the shared logo in clients/apple/.../punktfunk_Logo.icon). - drawable/ic_launcher_foreground.xml: the violet logo (3 exact paths) scaled + centered into the 108dp adaptive-icon safe zone via a group transform. - drawable/ic_launcher_monochrome.xml: single-tone silhouette for Android 13+ themed icons (Material You) — the launcher recolors it to the wallpaper. - mipmap-anydpi-v26/ic_launcher{,_round}.xml: adaptive-icon (background + foreground + monochrome); dark-indigo background (@color/ic_launcher_background) so the violet pops. - Manifest: android:icon=@mipmap/ic_launcher + roundIcon (was @android:drawable/sym_def_app_icon). minSdk 31 → anydpi-v26 covers every device (no legacy PNG mipmaps needed). Verified on a physical phone (Android 16): the icon renders centered + circle-masked; the themed-icon layer is wired. Co-Authored-By: Claude Opus 4.8 (1M context) --- .../android/app/src/main/AndroidManifest.xml | 3 ++- .../res/drawable/ic_launcher_foreground.xml | 27 +++++++++++++++++++ .../res/drawable/ic_launcher_monochrome.xml | 24 +++++++++++++++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 6 +++++ .../mipmap-anydpi-v26/ic_launcher_round.xml | 6 +++++ .../app/src/main/res/values/colors.xml | 5 ++++ 6 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 clients/android/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 clients/android/app/src/main/res/drawable/ic_launcher_monochrome.xml create mode 100644 clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 clients/android/app/src/main/res/values/colors.xml diff --git a/clients/android/app/src/main/AndroidManifest.xml b/clients/android/app/src/main/AndroidManifest.xml index 40d8aea..310de54 100644 --- a/clients/android/app/src/main/AndroidManifest.xml +++ b/clients/android/app/src/main/AndroidManifest.xml @@ -27,7 +27,8 @@ diff --git a/clients/android/app/src/main/res/drawable/ic_launcher_foreground.xml b/clients/android/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..f88d1dd --- /dev/null +++ b/clients/android/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,27 @@ + + + + + + + + + diff --git a/clients/android/app/src/main/res/drawable/ic_launcher_monochrome.xml b/clients/android/app/src/main/res/drawable/ic_launcher_monochrome.xml new file mode 100644 index 0000000..f823496 --- /dev/null +++ b/clients/android/app/src/main/res/drawable/ic_launcher_monochrome.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..c78bee3 --- /dev/null +++ b/clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..c78bee3 --- /dev/null +++ b/clients/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/clients/android/app/src/main/res/values/colors.xml b/clients/android/app/src/main/res/values/colors.xml new file mode 100644 index 0000000..89546b5 --- /dev/null +++ b/clients/android/app/src/main/res/values/colors.xml @@ -0,0 +1,5 @@ + + + + #16132A +