Chọn theo loại dữ liệu:
- shared_preferences: cặp key–value đơn giản (cờ, cấu hình, lựa chọn của người dùng). Không hợp dữ liệu lớn/có cấu trúc.
- File: đọc/ghi file trong thư mục app cho blob/tài liệu.
- SQLite (
sqflite): CSDL quan hệ cho dữ liệu có cấu trúc, truy vấn phức tạp, quan hệ giữa bảng — nền tảng cho offline-first. DùngwhereArgsđể chống SQL injection. - Drift / Hive / Isar: giải pháp cộng đồng — Drift là ORM type-safe trên SQLite; Hive/Isar là key-value/NoSQL. Với package cộng đồng, nên xem ngày phát hành gần nhất và issue còn mở trên pub.dev trước khi chọn; Hive hiện có fork cộng đồng
hive_ce.
Dữ liệu nhạy cảm (token, mật khẩu) nên để flutter_secure_storage (Keychain/Keystore), không để plaintext.