Speichern einer Kontaktliste über SharedPreferences

  • 4 Antworten
  • Letztes Antwortdatum
X

Xatan

Neues Mitglied
0
Hallo ich schreibe momentan an einer App die so ähnlich wie ein Messenger funktionieren soll, in dieser möchte ich z.B. eine Liste von Kontakten und Chatverläufe abspeichern.

Ein Kontakt besteht Beispielsweise aus Name Notiz Alter, etc...
Macht es Sinn dies über SharedPreferences zu machen oder doch lieber als .txt Datei abspeichern? Wenn ja wie funktioniert die Abspeicherung eines Stringarrays für jeden Kontakt?
Ich möchte zu Anfang möglichst einfach halten, und vielleicht später mal eine SQL Datenbank ausprobieren.
 
Ich würde dir gleich zu SQL raten...Objekte in sharedprefs zu speichern wie z.b. strings ist nicht einfach und ist auch nicht vorgesehen dafür.

Files sind ganz nett aber deine Aufgabe lässt sich mit einer DB viel angenehmer lösen


LG
 
Vom Aufwand ist es sehr schwer sich da einzulesen ? Hatte schon mit SQL bissle was zu tun aber noch nie in Android benutzt.
 
Xatan schrieb:
Ich möchte zu Anfang möglichst einfach halten, und vielleicht später mal eine SQL Datenbank ausprobieren.

Auf jeden Fall gleich mittels SQL lösen. Alles andere ist doppelte Arbeit und die vorherigen Lösungen (String-Array in SharedPrefs bzw. .txt-File) würde ich als "Pfusch" oder "Gebastelt" bezeichnen. Allein schon um dein Programm performant zu halten und die Anwendung nachvollziehbar testen zu können ist hier eine Datenbank um Welten sinnvoller.

ansonsten:

Speichern:
Code:
Editor editor = prefs.edit(); 
editor.putInt("array_size", array.length); for(int i=0;i<array.length; i++)    
editor.putString("array_" + i, array[i]); 
editor.commit();
Laden:
Code:
int size = prefs.getInt("array_size", 0); 
array = new String[size]; for(int i=0; i<size; i++)     
prefs.getString("array_" + i, null);


Der ursprüngliche Beitrag von 11:06 Uhr wurde um 11:10 Uhr ergänzt:

Xatan schrieb:
Vom Aufwand ist es sehr schwer sich da einzulesen ? Hatte schon mit SQL bissle was zu tun aber noch nie in Android benutzt.

Nein, nicht schwer...
Für Android brauchst du sqlite (<- wenn du damit schon gearbeitet hast, um so besser) ;)
Weitere Infos
Android SQLite Database Tutorial
Saving Data in SQL Databases | Android Developers
Android SQLite Database Tutorial
 
Danke ich denke ich mache es gleich in SQL, bevor ich da irgendwie total am rum probieren bin...^^
 
Zurück
Oben Unten