# Lưu dữ liệu bằng key-value

> multiplatform-settings, khóa rời rạc thay vì một blob, đọc có giá trị dự phòng riêng từng khóa, và runCatching bọc API đồng bộ dễ vỡ.

- URL: https://dantech.academy/courses/kotlin-mobile-101/06-full-app/lesson-01-key-value-persistence
- Khóa học: [Kotlin Mobile 101](https://dantech.academy/courses/kotlin-mobile-101.md)
- Module: Ráp App Hoàn Chỉnh
- Thời lượng: 17 phút
- Độ khó: intermediate
- Truy cập: Dành cho học viên

## Mục tiêu

- Đọc ghi dữ liệu bền bằng multiplatform-settings, một API dùng chung cho Android và iOS
- Thiết kế khóa rời rạc có giá trị dự phòng riêng, và biết khi nào key-value không còn đủ

## Nội dung bài học

1. Một API, Hai Kho Của Hệ Điều Hành
2. Khóa Rời Rạc
3. Đọc: Mỗi Khóa Một Giá Trị Dự Phòng
4. runCatching: Bọc API Đồng Bộ Dễ Vỡ
5. Đường Đi Của Một Trường Được Lưu
6. Khi Nào Key-Value Không Đủ

## Học cùng AI agent

Toàn bộ bài học dành cho học viên của khóa. Học viên mở bài trên web và bấm nút **Markdown** để copy toàn bài, rồi dán vào Claude, ChatGPT, Cursor hoặc agent bạn đang dùng. Nhanh hơn: tạo token ở `/profile/ai-agents` và agent đọc bài trực tiếp qua MCP.

- [Đăng ký khóa học](https://dantech.academy/kotlin-mobile-101/checkout)

---

- Bài trước: [expect/actual và nút back của hệ thống](https://dantech.academy/courses/kotlin-mobile-101/05-navigation/lesson-03-system-back-handler.md)
- Bài tiếp theo: [JSON cho danh sách, và fail-soft](https://dantech.academy/courses/kotlin-mobile-101/06-full-app/lesson-02-json-for-lists.md)
