Stockage local Flutter
SharedPreferences, flutter_secure_storage, path_provider, fichiers, best practices sécurité
1Quel package utiliser pour stocker de simples paires clé-valeur de manière persistante dans une application Flutter ?
Quel package utiliser pour stocker de simples paires clé-valeur de manière persistante dans une application Flutter ?
Réponse
SharedPreferences est le package standard pour stocker des données simples de type clé-valeur de manière persistante dans Flutter. Il utilise NSUserDefaults sur iOS et SharedPreferences sur Android. Ce package est idéal pour les préférences utilisateur, les paramètres de l'application ou les petites quantités de données non sensibles.
2Comment obtenir une instance de SharedPreferences dans Flutter ?
Comment obtenir une instance de SharedPreferences dans Flutter ?
Réponse
SharedPreferences.getInstance() retourne un Future qui résout vers l'instance unique de SharedPreferences. Cette méthode asynchrone charge les préférences depuis le stockage natif. Il est recommandé d'appeler cette méthode une seule fois et de réutiliser l'instance pour éviter des chargements multiples.
3Quels types de données peuvent être stockés avec SharedPreferences ?
Quels types de données peuvent être stockés avec SharedPreferences ?
Réponse
SharedPreferences supporte uniquement les types primitifs : int, double, bool, String et List<String>. Pour stocker des objets complexes, il faut les sérialiser en JSON String puis les désérialiser lors de la lecture. Cette limitation est due à l'implémentation native sous-jacente sur iOS et Android.
Quelle méthode utiliser pour sauvegarder une valeur booléenne avec SharedPreferences ?
Que retourne prefs.getString('key') si la clé n'existe pas dans SharedPreferences ?
+17 questions d'entretien
Autres sujets d'entretien Flutter
Les bases de Dart
Essentiels du langage Dart
Fondamentaux Flutter
Cycle de vie des Widgets
Cycle de vie de l'application
Layouts & Constraints
ListView & GridView
Navigation & Routing
State Management de base
Provider Pattern
Networking & HTTP
Sérialisation JSON
Base de données locale
Formulaires & Validation
Animations
Intégration Firebase
Tests unitaires
Tests de widgets
Build & Déploiement
Gestion des packages
Mémoire & Performance
Streams & RxDart
State Management avancé
Flutter Design Patterns
Optimisation des performances
Platform Channels
Custom Painting
Architecture d'application Flutter
Maîtrise Flutter pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement