From bc91c2898a09e31a710845b7bb7c7925495c69ad Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 17 Jul 2026 18:49:31 +0000 Subject: [PATCH] docs(android-llmservice): add Play Store hi-res app icon (512x512) Add the 512x512 Play Console hi-res app icon (the shard-J logo) as a store asset under android-llmservice/store/, with a README explaining it is for the Play Console listing and is not bundled into the APK/AAB. REUSE-annotate the PNG as MIT OR Apache-2.0. Sourced from the shared workspace logo set. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01EqBKwPNJSfaSnTVgw87CPT --- REUSE.toml | 8 ++++++++ android-llmservice/store/README.md | 17 +++++++++++++++++ android-llmservice/store/ic_launcher-512.png | Bin 0 -> 5809 bytes 3 files changed, 25 insertions(+) create mode 100644 android-llmservice/store/README.md create mode 100644 android-llmservice/store/ic_launcher-512.png diff --git a/REUSE.toml b/REUSE.toml index c63e19dd..31bb8a6b 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -105,6 +105,14 @@ path = "android-llmservice/app/src/main/res/mipmap-*/ic_launcher*.png" SPDX-FileCopyrightText = "2026 Bernard Ladenthin " SPDX-License-Identifier = "MIT OR Apache-2.0" +# LLM Service Play-Store hi-res icon (binary PNG, cannot carry inline SPDX). Store +# asset only — not bundled into the APK. Generated from the shard-J of the logo; +# MIT OR Apache-2.0 like the rest of the shared logo set. +[[annotations]] +path = "android-llmservice/store/ic_launcher-512.png" +SPDX-FileCopyrightText = "2026 Bernard Ladenthin " +SPDX-License-Identifier = "MIT OR Apache-2.0" + # Test image (binary, cannot carry inline SPDX) [[annotations]] path = "llama/src/test/resources/images/test-image.jpg" diff --git a/android-llmservice/store/README.md b/android-llmservice/store/README.md new file mode 100644 index 00000000..2a470095 --- /dev/null +++ b/android-llmservice/store/README.md @@ -0,0 +1,17 @@ + +# LLM Service — store assets + +Assets used when **publishing** the app, **not** bundled into the APK/AAB. Keep them +here so a Play Console upload has everything in one place. + +| File | Use | +|---|---| +| `ic_launcher-512.png` | Google Play **hi-res app icon** (512×512 PNG, 32-bit). Uploaded in the Play Console store listing — it is required there and is separate from the on-device launcher icon under `app/src/main/res/mipmap-*/`. | + +The icon is the **shard-`J`** of the java-llama.cpp logo, from the shared logo set in +the [`workspace`](https://github.com/bernardladenthin/workspace) repo +(`llama.cpp/projects/logo/app-icon/`). Licensed **MIT OR Apache-2.0**. diff --git a/android-llmservice/store/ic_launcher-512.png b/android-llmservice/store/ic_launcher-512.png new file mode 100644 index 0000000000000000000000000000000000000000..176e15965368f25da1ea0fcc30c724258bf890f2 GIT binary patch literal 5809 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 literal 0 HcmV?d00001