2016-06-23 11 views
0

Bitte ich entwickelte meine mobile App und verwendet in erster Linie localStorage zum Speichern von Kontoinformationen und einige andere Infos.Die App hat Handy-und Browser-Version. Für die Browserversion erwarte ich, dass ein angemeldeter Benutzer beim Neustart des Browsers nicht auf eine Auth-Seite umgeleitet wird. Dies funktioniert gut, da meine Informationen in localStorage gespeichert sind. Auf der anderen Seite, mein Handy nicht, Benutzer müssen sich einloggen, wenn er die App neu starten, bitte welche Option habe ich? Welche Option haben Entwickler für den mobilen Speicher verwendet? Muss ich die Datenbank benutzen? Wenn ja, welches sollte ich verwenden und wo finde ich eine bessere Dokumentation zu diesem Thema?Lokaler Speicher in der mobilen App

Hinweis: Ich verwende Cordova für meine mobile App-Entwicklungsumgebung.

+0

'localStorage.setItem (" Variable ", Wert);' –

Antwort

0

Es gibt ein Plug-in zum Speichern von Daten in einer SQLite-Datenbank mit Cordova in this link . Weitere Informationen zum Speicher finden Sie in Cordova in the doc.

+0

Warum funktioniert meine localStorage im Moment nicht? Bedeutet das, dass ich nur db benutzen kann? –

+0

Ich kann nicht sagen, sollten Sie Ihr Problem mit lokalen Speicher zu erklären, oder vielleicht etwas Code, lokalen Speicher sollte auf allen von Corodva unterstützten Plattformen wie im Dokument erwähnt –

+0

Dies ist ein wenig komplizierter Prozess. Das Installieren von Plugins lässt dich nicht sehr schnell zur Ausgabe kommen. –

0

Ihre Daten speichern, indem Sie die folgenden ein:

localStorage.setItem("variable", value); 

von localstorage Abrufen es durch die folgende Verwendung:

localStorage.getItem("variable"); 

Es ist so einfach, wie es ist. Referenz here.

+0

@G Ich mache eigentlich das gleiche, aber außerhalb der Geräte. IT bleibt nicht bestehen. –

+0

Warum brauchen Sie es außerhalb der Geräteereignisse? Vielleicht möchten Sie sie in Ihrer 'this.platform.ready(). Then (() => {}' only ryt? –

+0

[Klicken Sie hier] (http: // stackoverflow.com/a/30009046/4340139) Dieser wird Ihre Zweifel zu lösen, ich hoffe :) @NuruSalihu –

1

Aus irgendeinem Grund ist localStorage an den Browserverlauf gebunden. Einige mobile Browser haben eine Option zum Löschen des Browserverlaufs beim Beenden. Wenn diese Box ein Häkchen enthält, wird localStorage zusammen mit dem Browserverlauf gelöscht, sobald der Browser geschlossen wird! So können Sie den Benutzer bitten, in Einstellungen zu gehen und das Kontrollkästchen zu deaktivieren. Hinweis: localStorage wird von älteren IE-Browsern, Opera Mini und einigen Blackberry-Geräten nicht unterstützt.

Wenn Cookies aktiviert sind, können Sie einen einmaligen Cookie-Code verwenden, um den Benutzer automatisch einzuloggen. Dieser Cookie muss jedoch nach der ersten Verwendung ablaufen. Sobald der Benutzer angemeldet ist, muss der Server einen neuen Cookie-Code für den Client ausgeben. Und der Client kann dieses neue Cookie verwenden, um sich erneut anzumelden oder die Sitzung am Leben zu erhalten. Die doppelte Verwendung des gleichen Cookies sollte aus Sicherheitsgründen nicht funktionieren. Und der Server muss sicherstellen, dass nie zwei Benutzer denselben Code erhalten.

Ich erinnere mich, vor etwa 10 Jahren ging ich online, um meine E-Mails zu überprüfen, und sofort die Website ließ mich in einem anderen Benutzerkonto eingeloggt! Ich hätte die privaten E-Mails dieser Person lesen können, aber ich beschloss, es nicht zu tun. Ich habe den Vorfall dem Administrator gemeldet. Das Problem war wahrscheinlich, dass ihr Server mir einen zufälligen Schnellzugriffscode gab und ein anderer Benutzer irgendwie den gleichen Zugangscode bekam wie ich. Und als ich die Website öffnete, dachte ich, dass ich diese andere Person wäre. Wenn Ihre Seite mit Geld und Kreditkarten handelt, sollten Sie diese Technik vermeiden! Jede Art von Auto Login ist eine schlechte Idee für eine Bank!