2016-08-05 8 views
0

Ich habe ein HTML5-Spiel, portiert auf Android über Cordova. Jetzt versuche ich, den Spielstatus zwischen den Sitzungen zu halten. Ich plante, dies zu tun, indem ich den Zustand als .json in das persistente Datenverzeichnis unter Verwendung der cordova-plugin-Datei speicherte.Gamestate auf HTML5 Cordova speichern. Ich kann nicht mit cordova-Datei-Plugin lesen/schreiben

Ich verwende Cordova 6.2.0 und cordova-Plugin-Datei 4.2.0, und ich betreiben meinen Code nach dem deviceReady Ereignisse.

Um die Dateien zu schreiben und zu lesen, habe ich versucht, die Beispiele aus der offical documentation (die ein Nest von Rückrufen ohne sinnvolle Erklärung kommen ...) anwenden. Ich könnte das Beispiel "create persistent file" anwenden, um unter Chromium nach dem manuellen Anfordern des Kontingents zu laufen, sonst schlägt requestFileSystem mit "Sicherheitsfehler: zu viele Dateizugriffe" fehl (tut mir leid, habe es nicht wörtlich handlich). Bei Firefox schlägt requestFileSystem mit dem gleichen Fehler fehl, egal was ich ausprobiert habe. Auf Android fileEntry.getFile schlägt mit "Datei nicht gefunden" fehl. Der direkte Aufruf der Methoden writeFile oder readFile führt in allen Szenarien erneut zum Sicherheitsfehler.

Hat jemand etwas guten Beispiel-Code (oder hilfreiches Tutorial) für mein Problem:

  1. Lesen Sie eine persistente .json Datei (oder Textdatei, ich werde es trotzdem analysieren müssen), wenn es vorhanden ist (keine übermäßige Check für existance notwendig, werfen einfach, wenn die Datei nicht existiert genug ist)
  2. eine persistente .json Datei schreiben (oder Textdatei)
  3. Arbeit an Android und möglicherweise Cross-Browser

Bessere Beispiele (wie Raymond Camdens) sind ziemlich veraltet und werfen verschiedene Fehler auf.

Ich bin auch bereit, eine funktionierende Cross-Plattform-Lösung zu akzeptieren, die Cordova-Plugins insgesamt vermeidet.

+0

Grundlegende Arbeitsprobe von Dateioperationen -https: //github.com/gandhirajan/Cordova_File_Operations – Gandhi

Antwort

1

Ich denke, die beste Lösung Local Storage verwendet, und Sie können seine Dokumentation finden Sie hier: Local Storage

In meiner Idee, Local Storage ist sehr schnell, einfach und sicher.

+0

Oh. Ich hatte das Datei-Plugin so hart bekämpft, dass ich das komplett vergessen hatte. Das ist natürlich die einfachste mögliche Lösung. Danke für die Erinnerung! – user3410194

Verwandte Themen