Werte/Variablen dauerhaft speichern/ändern/lesen

  • Antworten:6
  • Bentwortet
Michele
  • Forum-Beiträge: 1.525

03.06.2013, 16:56:14 via Website

Hallo alle zusammen.


Wie kann ich das am besten umsetzen das z.B meine int Werte gespeichert werden auf dem Handy oder in der App?
Weil wenn ich ja mein Handy Neustarte z.B oder die App dann sind alle int werte wieder auf 0;
Das ist doof für Spiele oder andere Apps.

Deswegen möchte ich nun die Werte dauerhaft auf dem Handy oder in der App speichern.
Natürlich soll die App die Werte jederzeit ändern können. Also lesen und schreiben.

Kann ich das am besten mit
1FileOutputStream
2FileInputStream
machen?


LG

— geändert am 03.06.2013, 16:57:17

Antworten
Michele
  • Forum-Beiträge: 1.525

03.06.2013, 17:16:13 via Website

Danke dir wie immer impjor :*)

Habe ich eben auch gelesen.

Nur irgendwie klappt das nicht so ganz.

1SharedPreferences prefs = getPreferences(Context.MODE_PRIVATE);
2
3SharedPreferences.Editor editor = prefs.edit();
4editor.putString("test","test");
5editor.apply();

Soweit richtig zum schreiben?

EDIT: Dazu lässt sich SharedPreferences nicht Importieren.

LG

— geändert am 03.06.2013, 17:19:35

Antworten
Aaron B.
  • Forum-Beiträge: 206

03.06.2013, 17:19:34 via App

Zum Speichern:

getSharedPreferences('NAME', 'MODE').edit().putInt('NAME', 'VERT').commit();

Zum Laden:

getSharedPreferences('NAME', 'MODE').getInt('NAME', 'WENN NULL');

Beispiel:

in onCreate():

int score = getSharedPreferences("spiel", MODE_PRIVATE).getInt("spielstand", 0);

in onDestory():

getSharedPreferences("spiel", MODE_PRIVATE).edit.putInt("spielstand", score);

'spiel' ist der Name der sharedPreference

'spielstand' ist der Name deiner Variable

'score' ist deine Variable

Die 0 ist dafür da, falls die Variable nicht existiert. Dann wird 'score' zu null

LG

— geändert am 03.06.2013, 17:23:10

Antworten
Michele
  • Forum-Beiträge: 1.525

03.06.2013, 17:21:37 via Website

Ahh danke. Teste ich gleich mal.

Habe das anders halt gelesen. :D
Teste ich mal so.

commit(); soll man ab 2.3 nicht mehr nehmen.
Lieber apply();


LG

Antworten
Aaron B.
  • Forum-Beiträge: 206

03.06.2013, 17:23:28 via App

Ok :)

Antworten
Michele
  • Forum-Beiträge: 1.525

03.06.2013, 18:27:46 via Website

Und das speichert die Werte dauerhaft?

Will die für meine Widget Speichern.

Dann wenn ich Handy Neustarte sollen die Werte trotzdem noch da sein.

Aber irgendwie bin ich zu doof das umzusetzen.


EDIT: Ok habe es vielleicht nun doch. Immer das leichteste packt man nie sofort :grin:



LG

— geändert am 03.06.2013, 18:39:54

Antworten