Junior
Was sind SharedPreferences und wie verwendet man sie?
sobes.tech KI
Antwort von AI
SharedPreferences ist ein einfacher Mechanismus zum Speichern kleiner Datenmengen in Schlüssel-Wert-Paaren. Ideal zum Speichern von Benutzereinstellungen oder kleinen Flags.
Verwendung:
-
Abhängigkeit hinzufügen: In der Datei
pubspec.yamlfügen wir hinzu:dependencies: flutter: sdk: flutter shared_preferences: ^2.2.0 # Verwenden Sie die aktuelle Versionund führen
flutter pub getaus. -
Importieren:
import 'package:shared_preferences/shared_preferences.dart'; -
Instanz erhalten:
// Asynchrone Operation SharedPreferences prefs = await SharedPreferences.getInstance(); -
Daten speichern:
// String speichern prefs.setString('username', 'Alice'); // Zahl (int) speichern prefs.setInt('age', 30); // Zahl (double) speichern prefs.setDouble('salary', 50000.50); // Booleschen Wert speichern prefs.setBool('darkMode', true); // Liste von Strings speichern prefs.setStringList('items', ['item1', 'item2']);Alle Speichermethoden geben
Future<bool>zurück, was den Erfolg angibt. -
Daten lesen:
// String lesen String? username = prefs.getString('username'); // Gibt null zurück, wenn Schlüssel nicht vorhanden // Zahl (int) lesen int? age = prefs.getInt('age'); // Zahl (double) lesen double? salary = prefs.getDouble('salary'); // Booleschen Wert lesen bool? darkMode = prefs.getBool('darkMode'); // Liste von Strings lesen List<String>? items = prefs.getStringList('items'); -
Daten entfernen:
// Entfernen nach Schlüssel prefs.remove('username'); // Gibt Future<bool> zurück // Alle Daten löschen prefs.clear(); // Gibt Future<bool> zurück
Einschränkungen:
- Nicht geeignet für die Speicherung großer Datenmengen oder komplexer Strukturen.
- Daten werden in unverschlüsselter Form gespeichert (auch auf Anwendungsebene), nicht geeignet für sensible Informationen.
- Funktioniert mit Basistypen. Für Objekte ist Serialisierung/Deserialisierung erforderlich (z.B. mit json).