2016-04-12 21 views
0

Ich entwickle eine Offline-Webanwendung und ich versuche, auf dem Gerät, auf dem die App läuft, eine verfügbare Datumzeit zu finden, die vom Benutzer nicht bearbeitet werden kann. Ich muss in der Lage sein, über Javascript darauf zuzugreifen. Der Grund ist, dass ich möchte, dass meine Anwendung unempfindlich gegenüber zeitverändernden Hacks auf Handys ist. Irgendwelche Ideen ?Wie kann ich auf Hardware-Zeit vom Browser zugreifen

Antwort

0

Sie können Javascript nicht durchgehen, vielleicht können Sie den Hack begrenzen, indem Sie beim Start der Webapps einen Javascript-Timer starten und damit die Zeit anstelle der Uhrzeit des Geräts überprüfen? Es hängt von der Genauigkeit, die Sie wollen, aber so etwas wird jede Sekunde aktualisiert werden:

var time = new Date(); 

function loop(){ 
    setInterval(function(){ time=new Date(time.getTime() + 1000);loop(); }, 1000); 
} 
loop(); 

So ist die Zeitvariable die Echtzeit seit dem Start Ihrer Anwendungen abgelaufen ist. Nachteil dieser wird es Ressourcen ...

+0

In der Tat ist dies eine teilweise gute Idee. Wahrscheinlich das Beste, was ich bisher finden kann. Die Sache ist, dass der Benutzer seine Einstellung ändern kann, bevor er seinen Browser öffnet, und ich kann nichts tun, um das zu erkennen. –

+0

Dann müssen Sie die App mit Ihrem Server synchronisieren, wenn der Benutzer online ist. Da ich das Ziel Ihrer App nicht kenne, ist es schwierig, eine passende Lösung zu finden. Vielleicht können Sie mehr Informationen zur Verfügung stellen? –

+0

Ich mache eine Lochkarten-Anwendung. Einige Benutzer arbeiten in schlechten Empfangszonen, in denen die Internetverbindung für mehrere Tage verloren gehen kann. Ich dachte über die Idee der Synchronisierung mit dem Server nach, aber wenn der Benutzer seinen Browser oder seine Webseite schließt, wird meine Zeitvariable gelöscht. Wenn der Nutzer die App während der Offline-Wiedergabe erneut öffnet, habe ich keine synchronisierte Referenz mehr. –