Junior
Wat zijn SharedPreferences en hoe gebruik je ze?
sobes.tech AI
Antwoord van AI
SharedPreferences is een eenvoudig mechanisme om kleine hoeveelheden gegevens op te slaan in sleutel-waardeparen. Ideaal voor het opslaan van gebruikersinstellingen of kleine vlaggen.
Gebruik:
-
Dependentie toevoegen: In het bestand
pubspec.yamlvoegen we toe:dependencies: flutter: sdk: flutter shared_preferences: ^2.2.0 # Gebruik de actuele versieen voeren
flutter pub getuit. -
Importeren:
import 'package:shared_preferences/shared_preferences.dart'; -
Instantie verkrijgen:
// Asynchrone operatie SharedPreferences prefs = await SharedPreferences.getInstance(); -
Gegevens opslaan:
// String opslaan prefs.setString('username', 'Alice'); // Getal (int) opslaan prefs.setInt('age', 30); // Getal (double) opslaan prefs.setDouble('salary', 50000.50); // Booleaanse waarde opslaan prefs.setBool('darkMode', true); // Lijst van strings opslaan prefs.setStringList('items', ['item1', 'item2']);Alle opslaan-methoden retourneren
Future<bool>, wat op succes wijst. -
Gegevens lezen:
// String lezen String? username = prefs.getString('username'); // Retourneert null als sleutel niet gevonden // Getal (int) lezen int? age = prefs.getInt('age'); // Getal (double) lezen double? salary = prefs.getDouble('salary'); // Booleaanse waarde lezen bool? darkMode = prefs.getBool('darkMode'); // Lijst van strings lezen List<String>? items = prefs.getStringList('items'); -
Gegevens verwijderen:
// Verwijderen op sleutel prefs.remove('username'); // Retourneert `Future<bool>` // Alle gegevens verwijderen prefs.clear(); // Retourneert `Future<bool>`
Beperkingen:
- Niet geschikt voor het opslaan van grote hoeveelheden gegevens of complexe structuren.
- Gegevens worden in open vorm opgeslagen (ook op applicatieniveau), niet geschikt voor gevoelige informatie.
- Werkt met basistypen. Voor objecten is serialisatie/deserialisatie vereist (bijvoorbeeld met json).