Ich habe eine progressive Web-App geschrieben, nach allen verfügbaren Leitfäden und Beispiele, aber aus irgendeinem Grund, wenn ich Sie auf die Add to homescreen
Taste, halte ich diese mysteriöse Fehler bekommen:Progressive Web App „funktioniert nicht offline“ Fehler
Site cannot be installed: does not work offline
Der Hauptunterschied zwischen meinem PWA und den Beispielen besteht darin, dass meins nur in einem Nicht-Root-Pfad der Domäne läuft, also musste ich den configs an verschiedenen Stellen zusätzliche Pfade hinzufügen, sodass die App auf die beschränkt ist Nicht-root-Ordner.
Die Google Lighthouse Seite hilft auch nicht viel und gibt eine sehr ähnliche Nachricht.
Kann jemand vorschlagen, woran dieser Fehler liegen könnte?
Das ist nicht erforderlich. Aber es sieht so aus, als würdest du deine PWA in diesem Ordner finden. Also musst du es umschreiben. Der Grund, warum Sie diesen Fehler erhalten haben, ist, dass für diesen Bereich kein Service-Mitarbeiter-Abruf-Ereignishandler vorhanden war. Dieser Beitrag spricht über diese Anforderung: https://love2dev.com/blog/-your-progressive-web-app-may-not-prompting-the-customer-to-add-to-home-screen/ –
Es ist Es gibt keine dokumentierte Anforderung (nicht einmal auf Ihrer Site), dass Sie beim Scoping einer Anwendung den Bereich im aufrufenden Skript angeben müssen. Das Hinzufügen des Bereichs zum Manifest funktioniert nicht, der Aufruf des serviceWorker im Website-Code ist standardmäßig Root-Bereich und ignoriert das Manifest. Dies könnte ein Fehler in der ServiceWorker-Implementierung sein, um ehrlich zu sein. Wenn _alle_ meiner Website-Dateien im relativen Verzeichnis gespeichert sind, sollte die App keine absolute Gültigkeit haben, sondern nur die Bereitstellung an einem sekundären Standort. – StampyCode
@ChrisLove in der Tat, ich habe gerade gefunden, dass Sie den Umfang auf '.' und es funktioniert. Obwohl der Parameter in meinem Client-Skript immer noch benötigt wird, kann er jetzt zumindest den absoluten Pfad ignorieren. – StampyCode