# Lưu trữ cục bộ (Flutter) > SharedPreferences, flutter_secure_storage, path_provider, tệp, các phương pháp bảo mật tốt nhất - 20 câu hỏi phỏng vấn - Junior - [Câu hỏi phỏng vấn: Flutter](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van.md) ## 1. Nên sử dụng package nào để lưu trữ các cặp khóa-giá trị đơn giản một cách bền vững trong ứng dụng Flutter? **Câu trả lời** SharedPreferences là package tiêu chuẩn để lưu trữ dữ liệu khóa-giá trị đơn giản một cách bền vững trong Flutter. Nó sử dụng NSUserDefaults trên iOS và SharedPreferences trên Android. Package này lý tưởng cho các tùy chọn người dùng, cài đặt ứng dụng hoặc lượng nhỏ dữ liệu không nhạy cảm. ## 2. Làm thế nào để lấy một instance SharedPreferences trong Flutter? **Câu trả lời** SharedPreferences.getInstance() trả về một Future được resolve thành instance SharedPreferences duy nhất. Phương thức bất đồng bộ này tải các tùy chọn từ bộ nhớ native. Nên gọi phương thức này một lần và tái sử dụng instance để tránh tải nhiều lần. ## 3. Có thể lưu trữ những kiểu dữ liệu nào với SharedPreferences? **Câu trả lời** SharedPreferences chỉ hỗ trợ các kiểu nguyên thủy: int, double, bool, String và List. Để lưu trữ các đối tượng phức tạp, chúng phải được serialize thành JSON String rồi deserialize khi đọc. Hạn chế này là do triển khai native nền tảng trên iOS và Android. ## Còn 17 câu hỏi nữa - Nên sử dụng phương thức nào để lưu một giá trị boolean với SharedPreferences? - prefs.getString('key') trả về gì nếu khóa không tồn tại trong SharedPreferences? Đăng ký miễn phí: https://sharpskill.dev/vi/login ## Các chủ đề phỏng vấn Flutter khác - [Kiến thức cơ bản về Dart](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/dart-basics.md): 25 câu hỏi, Junior - [Kiến thức cơ bản về ngôn ngữ Dart](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/dart-language-essentials.md): 15 câu hỏi, Junior - [Kiến thức cơ bản về Flutter](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/flutter-fundamentals.md): 18 câu hỏi, Junior - [Vòng đời của Widget](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/widget-lifecycle.md): 20 câu hỏi, Junior - [Vòng đời ứng dụng](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/app-lifecycle.md): 20 câu hỏi, Junior - [Layouts & Constraints](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/layouts-constraints.md): 24 câu hỏi, Mid-Level - [ListView & GridView](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/listview-gridview.md): 25 câu hỏi, Mid-Level - [Điều hướng & Routing](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/navigation-routing.md): 22 câu hỏi, Mid-Level - [Quản lý State cơ bản](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/state-management-basics.md): 22 câu hỏi, Mid-Level - [Provider Pattern](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/provider-pattern.md): 18 câu hỏi, Mid-Level - [Networking & HTTP](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/networking-http.md): 20 câu hỏi, Mid-Level - [Tuần tự hóa JSON](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/json-serialization.md): 20 câu hỏi, Mid-Level - [Cơ sở dữ liệu cục bộ](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/local-database.md): 22 câu hỏi, Mid-Level - [Biểu mẫu & Xác thực](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/forms-validation.md): 20 câu hỏi, Mid-Level - [Hoạt ảnh](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/animations.md): 20 câu hỏi, Mid-Level - [Tích hợp Firebase](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/firebase-integration.md): 18 câu hỏi, Mid-Level - [Kiểm thử đơn vị](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/unit-testing.md): 20 câu hỏi, Mid-Level - [Kiểm thử widget](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/widget-testing.md): 18 câu hỏi, Mid-Level - [Build & Triển khai](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/build-deployment.md): 16 câu hỏi, Mid-Level - [Quản lý gói](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/package-management.md): 16 câu hỏi, Mid-Level - [Bộ nhớ & Hiệu năng](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/memory-performance.md): 22 câu hỏi, Senior - [Streams & RxDart](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/streams-rxdart.md): 24 câu hỏi, Senior - [State Management nâng cao](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/advanced-state-management.md): 26 câu hỏi, Senior - [Flutter Design Patterns](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/flutter-design-patterns.md): 24 câu hỏi, Senior - [Tối ưu hóa hiệu suất](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/performance-optimization.md): 26 câu hỏi, Senior - [Platform Channels](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/platform-channels.md): 20 câu hỏi, Senior - [Custom Painting](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/custom-painting.md): 22 câu hỏi, Senior - [Kiến trúc ứng dụng Flutter](https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/flutter-app-architecture.md): 22 câu hỏi, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/vi/technologies/flutter/cau-hoi-phong-van/local-storage