Tôi có thể không có sườn phát triển tương tự như một số trong những áp phích khác ở đây (tôi đã phát triển nghiêm túc các ứng dụng vì tháng 7 năm 2012), nhưng tôi đã tìm thấy một giải pháp tích hợp SharedPreferences cũng như onSaveInstanceState().
Ứng dụng của tôi có hoạt động màn hình giật gân đọc giá trị từ SharedPreferences và gán chúng cho các biến thích hợp. Ngoài ra, mỗi Activity mà tôi tạo ra có phương thức onSaveInstanceState() của riêng mình và tôi cam kết tất cả dữ liệu tôi cần lưu vào SharedPreferences ở đó, trong mỗi và mọi Activity. Vì onSaveInstanceState() được chạy trước khi một ứng dụng hoặc hoạt động đóng bình thường, nó sẽ sao lưu các giá trị dữ liệu trong tất cả các trường hợp bình thường.
Nó có thể không phải là giải pháp hiệu quả nhất, đặc biệt là trong các ứng dụng lớn hơn với nhiều hoạt động, nhưng theo như thử nghiệm của tôi, nó bảo vệ ứng dụng của bạn khỏi mất dữ liệu 99% thời gian.
Nếu một nhà phát triển có kinh nghiệm hơn muốn kêu gọi và xác nhận hoặc từ chối điều này, tôi chắc chắn nó sẽ làm phong phú thêm câu hỏi và câu trả lời.
Có, tôi cần có thể khôi phục trạng thái ứng dụng, sau khi khởi động lại xảy ra. Vì vậy, onSaveInstanceState() sẽ là giải pháp tốt nhất – Waypoint
Nếu ứng dụng thực sự bị tắt bởi hệ thống, trạng thái cá thể đã lưu sẽ bị mất. Điều tương tự cũng xảy ra khi tắt thiết bị. Nếu bạn muốn giữ lại trạng thái trong các trường hợp đó, 'onSaveInstanceState()' sẽ không đủ. –
Ồ, cảm ơn, vì vậy SharedPreferences là mục tiêu – Waypoint