Änderungen am 13.06.2026
1. Scope nur auf Parkplatzkarte
- Aktivierung der UX-Logik ausschließlich innerhalb des Shortcodes der LKW-Parkplatzkarte.
- Keine globale Einblendung auf Startseite, Blogbeiträgen oder anderen Unterseiten.
2. PWA-Installationshinweis kontextsensitiv
- Install-Button (
App installieren) erscheint nur, wenn alle Kernbedingungen erfüllt sind:- Parkplatzkarte sichtbar
- Seite aktiv sichtbar (
visibilityState) - Browser liefert
beforeinstallprompt - App nicht bereits installiert
- mind. eine Nutzungsbedingung erfüllt:
- Route berechnet
- Standortfunktion genutzt
- Karte per Nutzer bewegt/gezoomt
- oder 15 Sekunden aktive Nutzung
- Keine aggressive Sofort-Einblendung beim Seitenaufruf.
3. Session-Dismiss ohne Cookies / ohne localStorage
- Dismiss für Install-Hinweis ist tab- und sessionbezogen (
sessionStorage). - In derselben Session keine wiederholte Einblendung.
- Bei neuer Session darf der Hinweis wieder erscheinen.
4. In-App-Browser-Erkennung mit Capability-Check
- Erkennung kombiniert User-Agent-Heuristik mit Capability-Auswertung:
navigator.geolocationbeforeinstallprompt- Permissions API / Geolocation-Permission-Verhalten
- Hinweis nur bei relevanter In-App-Konstellation oder erkennbaren Einschränkungen.
- Normale Browser werden nicht unnötig adressiert.
5. iOS-/Apple-Sonderfall ergänzt
- Spezielle Behandlung für iPhone/iPad in Facebook-/Instagram-/Meta-In-App-Browsern.
- Normales Safari wird nicht als problematisch behandelt.
- Eigener Hinweistext mit klarer Anleitung:
⋯ → In Safari öffnen- oder
Im externen Browser öffnen
- Buttons im Hinweis:
In Safari öffnenTrotzdem fortfahren
6. URL-intelligentes Öffnen im externen Browser
- Basis ist immer die aktuelle URL (
window.location.href) inklusive möglicher Deep Links. - Android-Fallback über Intent-URL.
- Wenn Öffnen blockiert wird: direkte Link-Option und klare Kurz-Anleitung.
7. Minimal-invasive betroffene Dateien
layouts/_shortcodes/lkw-parkplatzkarte.htmlassets/js/bkf-router/routing-mode.jsstatic/js/pwa-bootstrap.jsassets/scss/custom.scss
Keine neue Architektur, keine globale Website-Umbauten.