Ruhemodus für eine Progressive Web App (PWA) konfigurieren?

Zunächst einmal kenne ich den Unterschied zwischen "sleep mode" und "standby" nicht, daher verwende ich in der folgenden Problembeschreibung höchstwahrscheinlich den falschen Begriff:

Ich baue mir eine kleine PWA, die meine Routen mit OpenLayers trackt. Es funktioniert soweit gut, aber irgendwann wird die Aufnahme eines Tracks unterbrochen. Ich nehme an, das liegt am automatischen Schlafmodus, der Chrome und damit wahrscheinlich auch "navigator.geolocation" "ausschaltet".

Gibt es eine Möglichkeit, meine PWA und navigator.geolocation ihre Arbeit fortsetzen zu lassen, wenn sich Android im Energiesparmodus befindet? Und wenn ja, gibt es eine Möglichkeit, diese Einstellung über die PWA zu aktivieren, ohne in "Einstellungen -> ... -> ..." zu gehen (falls dies überhaupt möglich ist)?

Danke schön!

PS: Die Community von gis.stackexchange.com hat mir empfohlen, diese Frage hier zu stellen.

PPS: Eine „PWA“ („Progressive Web App“) ist kurz gesagt nichts anderes als eine Webanwendung, die aussieht und sich wie eine „echte“ App verhält. Obwohl es in einem Browser ausgeführt wird (in meinem Fall konzentriere ich mich nur auf Chrome), kann es über Servicemitarbeiter offline verwendet werden, die Benutzeroberfläche zeigt nicht die Adressleiste des Browsers und einiges mehr. Durch die Verwendung aller modernen Browser-APIs ist es möglich, eine App zu erstellen, ohne den App Store durchlaufen zu müssen (obwohl eine PWA auch als App im App Store registriert werden könnte).

AFAIK, eine PWA ist auf einen Webbrowser angewiesen und unterliegt denselben Einschränkungen wie der Browser. Da ich davon nichts weiß, sehen Sie, ob Sie den Benutzer bitten können, Ihre App (technisch gesehen den Browser) von der Batterieoptimierung auszunehmen . Native Apps können den Benutzer auf diese Weise fragen. Ich könnte mich in diesem Thema völlig irren, aber das ist meine Meinung angesichts meiner Erfahrung mit PWAs, die auf der endbenutzerspezifischen Interaktion mit ihnen basieren.

Antworten (1)

Wie sich herausstellt, gibt es eine Web-API, "Screen Wake Lock API": https://developer.mozilla.org/en-US/docs/Web/API/Screen_Wake_Lock_API