2016-04-11 17 views
1

In der mobilen Anwendung, die ich entwickle, gibt es eine Login-Seite. Sobald der Benutzer angemeldet ist, erhält er ein Zugriffstoken, das für einige Dinge verwendet werden kann, aber das Zugriffstoken ist für eine Stunde verfügbar. Ich weiß bereits, wie man es erneuert, aber gibt es eine bestimmte Funktion, die angerufen werden kann, so wird diese Operation jede Stunde automatisch ausgeführt?(Nativescript/Angular2) Benutzer angemeldet bleiben

Wie für die Anmeldung, im Moment, wenn ich die Anwendung mit der Home-Taste oder die Zurück-Taste verlassen und ich komme zurück in der App, ich bin immer noch angemeldet, aber es ist nicht der Fall, wenn ich die App kille (was ich gerne wäre). Gibt es jemanden, der weiß, wie ich es umsetzen könnte?

Vielen Dank im Voraus

+0

Willkommen bei StackOverflow. Bitte überprüfen Sie die Hilfe-Menü über welche Fragen zu (nicht) aks und wie man gute Fragen stellt. –

+0

Frage bearbeitet –

Antwort

1

Ich würde Ihnen raten, einen alternativen Ansatz zu nehmen. Was du versuchst zu tun, ist technisch möglich, aber im Allgemeinen ist es eine schlechte Übung, deine App im Hintergrund zu betreiben, außer es ist absolut notwendig. Der Code fügt eine Menge Komplexität hinzu, und viele Benutzer geben Ihnen keine Berechtigungen, um im Hintergrund sowieso zu laufen, da es eine bekannte Art ist, Ihren Akku zu leeren.

Wenn Sie wirklich wirklich diese Route gehen möchten, müssen Sie die erforderlichen iOS- und Android-APIs aufrufen, damit Ihre App im Hintergrund ausgeführt werden kann. Es gibt eine Cordova plugin for this, auf die Sie verweisen können, aber Sie müssen diesen Code hauptsächlich von Grund auf neu schreiben.

Ich würde einen von zwei alternativen Ansätzen vorschlagen. Entweder 1) verfallen Ihre Authentifizierungs-Tokens nicht für den App-Zugriff, was je nach App möglich ist oder nicht 2) Integrieren Sie NativeScript touch id plugin, was die erneute Authentifizierung für einen guten Teil Ihrer Benutzer vereinfacht.

+0

Da ich kein Apple-Gerät habe, wird es ein wenig schwierig sein, das TouchID-Plugin zu testen ^^ Ok, sagen wir einfach, ich möchte nicht, dass die App im Hintergrund läuft. Was ist mit dem automatischen Aktualisieren des Zugriffstokens? –

+0

Ist das okay, wenn ich einen setInterval in den Konstruktor der Seite lege? –

+0

Ich denke, dass Sie das setInterval wahrscheinlich auf eine globalere Ebene stellen möchten, so dass es nicht an eine bestimmte Seite gebunden ist. Aber wissen Sie, dass die Ausführung des Codes gestoppt wird, wenn der Benutzer die App nicht geöffnet hat, sodass setInterval nicht im Hintergrund ausgeführt wird. –

Verwandte Themen