Alte Symboldateien tragen jetzt auch das neue Bild

Filipe hat die Verknuepfungen dreimal neu angelegt und sah trotzdem das
alte Symbol. Die Ursache lag nicht an den neuen Dateien - die werden
nachweislich korrekt ausgeliefert (36 von 36 live byteweise geprueft),
sondern an vier Altlasten:

  /assets/img/favicon.png          256x256
  /assets/img/apple-touch-icon.png 180x180
  /assets/img/icon-192.png         192x192
  /assets/img/icon-512.png         512x512

Die stammen aus der Zeit vor dem Umbau auf app-symbole/ und werden von
KEINER Seite mehr verlinkt - geprueft mit einer Suche ueber alle html,
js, json und webmanifest: nur noch sw.js und main.js nennen sie.

Aber Chrome hat sich das Favicon dieser Domain gemerkt, als favicon.png
noch verlinkt war, und gibt es nicht mehr her: Beim Anlegen einer
Verknuepfung nimmt Windows dieses alte Bild, egal was im HTML steht. Auf
Filipes Bildschirm trugen deshalb ZWEI verschiedene Verknuepfungen
dasselbe Symbol - das war der entscheidende Hinweis, denn zwei Apps mit
verschiedenen Manifesten koennen unmoeglich dasselbe Symbol haben.

Statt zu hoffen, dass ein Zwischenspeicher irgendwann aufgibt, tragen die
alten Adressen jetzt einfach dasselbe Bild wie die neuen. Damit ist es
egal, welche ein Programm nimmt.

Dazu im Service Worker: CACHE_NAME auf v2 hochgezaehlt - activate()
loescht dadurch den alten Zwischenspeicher samt altem Symbol. Und
SHELL_ASSETS zeigt nicht mehr auf die verwaisten icon-192/-512, sondern
auf die Adressen aus dem Manifest.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-06 00:32:59 +02:00
co-authored by Claude Opus 5
parent ed12d75404
commit 6541ecbfa7
5 changed files with 11 additions and 3 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 KiB

After

Width:  |  Height:  |  Size: 187 KiB

+11 -3
View File
@@ -9,7 +9,12 @@
leer bleibt — bewusst simpel gehalten (kein Offline-Vollausbau).
===================================================================== */
const CACHE_NAME = "dogfather-universe-shell-v1";
/* Die Zahl am Ende MUSS hochgezaehlt werden, wenn sich hier etwas aendert:
activate() loescht jeden Zwischenspeicher, dessen Name nicht genau so
heisst. Ohne das Hochzaehlen behaelt ein Geraet den alten Inhalt
beliebig lange — am 06.09.2026 war genau das der Fall, ein Geraet hielt
noch das alte Symbol fest. */
const CACHE_NAME = "dogfather-universe-shell-v2";
const SHELL_ASSETS = [
"/",
"/index.html",
@@ -18,9 +23,12 @@ const SHELL_ASSETS = [
"/assets/css/theme-hasidog.css",
"/assets/css/theme-spicymedia.css",
"/assets/js/main.js",
/* Symbole: die Adressen, auf die das Manifest zeigt. Bis 06.09.2026
standen hier /assets/img/icon-192.png und -512.png — die benutzt
seit dem Umbau auf app-symbole/ keine Seite mehr. */
"/assets/img/favicon.png",
"/assets/img/icon-192.png",
"/assets/img/icon-512.png",
"/assets/img/app-symbole/universe-192.png",
"/assets/img/app-symbole/universe-512.png",
];
self.addEventListener("install", (event) => {