Sao lưu & Phục hồi
1. Mục đích
Module Sao lưu & Phục hồi (Premium) cho phép phụ huynh:
- Sao lưu: Xuất toàn bộ dữ liệu (vần, collection, lịch sử, cài đặt) ra file
- Phục hồi: Nhập file backup để khôi phục dữ liệu (ghi đè dữ liệu hiện tại)
Hữu ích khi đổi máy, cài lại app, hoặc muốn lưu trữ bản sao an toàn.
2. Khi nào nên dùng
Sử dụng khi bạn muốn:
- Sao lưu dữ liệu trước khi đổi máy hoặc cài lại app
- Khôi phục dữ liệu từ bản backup trước đó
- Chuyển dữ liệu giữa các thiết bị (export từ máy cũ, import vào máy mới)
3. Các màn hình liên quan
- Cài đặt → Sao lưu dữ liệu
- Cài đặt → Phục hồi dữ liệu
- File picker (chọn file backup)
- Dialog xác nhận phục hồi
4. Cách sử dụng chính
4.1 Sao lưu dữ liệu
- Vào Tab Cài đặt → Sao lưu dữ liệu
- (Premium) Tap nút Sao lưu hoặc Xuất
- App tạo file backup (JSON hoặc định dạng tương tự)
- Chia sẻ file: lưu vào Files, Google Drive, gửi email, v.v.
- Lưu file ở nơi an toàn
Free user: Tap → dialog khóa (Nâng cấp Premium)
4.2 Phục hồi dữ liệu
- Vào Tab Cài đặt → Phục hồi dữ liệu
- (Premium) Tap Chọn file hoặc Nhập
- Chọn file backup đã lưu trước đó
- App kiểm tra file hợp lệ
- Cảnh báo: “Phục hồi sẽ ghi đè toàn bộ dữ liệu hiện tại. Bạn có chắc?”
- Xác nhận → app khôi phục vần, collection, lịch sử, cài đặt
- App có thể reload để áp dụng dữ liệu mới
Free user: Tap → dialog khóa
4.3 Nội dung file backup
File backup thường chứa:
- Danh sách vần (kể cả vần tùy chỉnh, độ khó, ví dụ)
- Danh sách collection và vần trong mỗi collection
- Lịch sử session (14 ngày)
- Cài đặt (bố cục, màu chữ, v.v.)
5. Logic & quy tắc
5.1 Định dạng file
- Thường là JSON hoặc format tương tự
- Có version để tương thích khi app cập nhật
5.2 Phục hồi
- Ghi đè: Dữ liệu hiện tại bị thay thế hoàn toàn
- Không merge: Không cộng dồn với dữ liệu cũ
- Xác nhận: Bắt buộc xác nhận trước khi phục hồi
5.3 Lỗi file
- File không hợp lệ: Hiển thị thông báo lỗi, không phục hồi
- File từ phiên bản cũ: Có thể hỗ trợ migrate (tùy spec)
6. Lưu ý quan trọng
- Premium only: Free user cần nâng cấp để sử dụng
- Phục hồi ghi đè: Sao lưu dữ liệu hiện tại trước khi phục hồi (nếu cần giữ)
- Lưu file an toàn: Backup nên lưu ở nhiều nơi (cloud, USB, v.v.)
- Offline: Sao lưu và phục hồi hoạt động offline (file local)