Tổng quan về tính năng sao lưu dữ liệu

Người dùng thường đầu tư rất nhiều thời gian và công sức để tạo danh tính, thêm dữ liệu, tuỳ chỉnh chế độ cài đặt cũng như lựa chọn ưu tiên trong ứng dụng của bạn. Để đảm bảo cung cấp trải nghiệm tuyệt vời cho người dùng, một việc quan trọng mà bạn cần làm là bảo toàn dữ liệu cũng như hoạt động cá nhân hoá cho người dùng khi họ nâng cấp lên thiết bị mới hoặc cài đặt lại ứng dụng. Trang này mô tả những dữ liệu cần sao lưu và các tuỳ chọn sao lưu dành cho bạn.

Chọn dữ liệu cần sao lưu

Dữ liệu về danh tính và tài khoản, dữ liệu về các chế độ cài đặt và dữ liệu ứng dụng trên thiết bị.

Hình 1. Đảm bảo bạn khôi phục dữ liệu về danh tính, dữ liệu ứng dụng và dữ liệu về các chế độ cài đặt cho những người dùng quay lại ứng dụng của bạn.

Khi dùng ứng dụng của bạn, người dùng tạo ra rất nhiều dữ liệu. Hãy nhớ sao lưu dữ liệu thích hợp – việc chỉ sao lưu một số dữ liệu có thể gây khó chịu cho người dùng khi họ mở ứng dụng trên thiết bị mới và phát hiện thiếu gì đó. Có một số loại dữ liệu quan trọng cần sao lưu cho người dùng như dữ liệu về danh tính, dữ liệu do người dùng tạo và dữ liệu về các chế độ cài đặt, theo mô tả dưới đây.

Dữ liệu về danh tính

Bạn có thể góp phần duy trì mức độ tương tác của người dùng hiện tại bằng cách di chuyển tài khoản của người dùng khi họ bắt đầu sử dụng một thiết bị mới.

  • Để biết thông tin chi tiết về cách chuyển thông tin xác thực và mã thông báo uỷ quyền, hãy xem bài viết Block Store.

  • Để khám phá các giải pháp đăng nhập bằng Google giúp người dùng dễ dàng đăng nhập vào ứng dụng của bạn, hãy xem bài viết Google Identity.

Dữ liệu ứng dụng

Dữ liệu ứng dụng có thể bao gồm nội dung do người dùng tạo, chẳng hạn như văn bản, hình ảnh và các nội dung nghe nhìn khác. Bạn có thể đồng bộ hoá dữ liệu ứng dụng giữa các thiết bị chạy Android và lưu dữ liệu mà bạn muốn dùng trong vòng đời thông thường của ứng dụng. Bạn cũng có thể khôi phục dữ liệu của người dùng cũ trên một thiết bị mới. Để tìm hiểu cách thực hiện, hãy xem bài viết Chuyển dữ liệu bằng bộ điều hợp đồng bộ hoá.

Dữ liệu về các chế độ cài đặt

Hãy đảm bảo bạn cũng sao lưu và khôi phục dữ liệu về các chế độ cài đặt để duy trì các lựa chọn ưu tiên được cá nhân hoá của người dùng cũ trên một thiết bị mới. Bạn có thể khôi phục dữ liệu về các chế độ cài đặt ngay cả khi người dùng không đăng nhập vào ứng dụng. Bạn có thể sao lưu những chế độ cài đặt mà người dùng thiết lập một cách rõ ràng trong giao diện người dùng của ứng dụng, cũng như đảm bảo tính minh bạch của dữ liệu, chẳng hạn như một biểu tượng cờ cho biết liệu người dùng đã xem trình hướng dẫn thiết lập hay chưa.

Để duy trì tối đa trải nghiệm của người dùng hiện tại trên thiết bị mới, hãy đảm bảo bạn sao lưu các chế độ cài đặt sau đây của người dùng:

  • Mọi chế độ cài đặt mà người dùng sửa đổi, chẳng hạn như khi sử dụng Thư viện lựa chọn ưu tiên Jetpack.

  • Người dùng bật hay tắt thông báo và nhạc chuông.

  • Cờ boolean cho biết liệu người dùng thấy màn hình chào mừng hay phần chú thích giới thiệu công cụ.

Di chuyển các chế độ cài đặt từ thiết bị di động này sang thiết bị di động khác.

Hình 2. Việc khôi phục các chế độ cài đặt trên thiết bị mới đảm bảo mang lại trải nghiệm tuyệt vời cho người dùng.

Tránh sao lưu URI vì có thể chúng không ổn định. Trong một số trường hợp, việc khôi phục cho thiết bị di động mới có thể dẫn đến URI không hợp lệ và không trỏ đến tệp hợp lệ. Một ví dụ cho vấn đề này là sử dụng URI để lưu lựa chọn ưu tiên về nhạc chuông của người dùng. Khi người dùng cài đặt lại ứng dụng, URI có thể trỏ đến vị trí không có nhạc chuông hoặc nhạc chuông khác với nhạc chuông mong muốn. Thay vì sao lưu URI, bạn có thể sao lưu một số siêu dữ liệu về chế độ cài đặt, chẳng hạn như tiêu đề nhạc chuông hoặc giá trị băm của nhạc chuông.

Tuỳ chọn sao lưu

Android cung cấp 2 cách để ứng dụng sao lưu dữ liệu lên đám mây: Tự động sao lưu cho ứng dụngsao lưu khoá-giá trị. Tính năng Tự động sao lưu (có trên Android phiên bản 6.0 trở lên) lưu giữ dữ liệu bằng cách tải lên tài khoản Google Drive của người dùng. Quá trình Tự động sao lưu bao gồm các tệp trong hầu hết thư mục mà hệ thống gán cho ứng dụng của bạn. Tính năng Tự động sao lưu có thể lưu trữ tối đa 25 MB dữ liệu dạng tệp cho mỗi ứng dụng. Tính năng sao lưu khoá-giá trị (trước đây gọi là Backup API và Android Backup Service) lưu giữ dữ liệu về các chế độ cài đặt dưới dạng các cặp khoá-giá trị bằng cách tải lên Android Backup Service.

Nói chung, bạn nên sử dụng tính năng Tự động sao lưu vì tính năng này được bật theo mặc định và bạn không cần phải làm gì để triển khai. Các ứng dụng nhắm mục tiêu Android phiên bản 6.0 trở lên sẽ tự động bật tính năng Tự động sao lưu. Tính năng Tự động sao lưu là một phương thức sử dụng tệp để sao lưu dữ liệu ứng dụng. Mặc dù tính năng Sao lưu tự động rất dễ triển khai, nhưng bạn có thể cân nhắc sử dụng tính năng sao lưu khoá-giá trị nếu có nhu cầu cụ thể hơn về việc sao lưu dữ liệu.

Bảng sau đây mô tả một số điểm khác biệt chính giữa tính năng sao lưu khoá-giá trị và tính năng Tự động sao lưu:

Danh mục Sao lưu khoá-giá trị (Android Backup Service) Tự động sao lưu trên Android
Phiên bản được hỗ trợ Android 2.2 (API cấp 8) trở lên. Android 6.0 (API cấp 23) trở lên.
Cách sử dụng Tắt theo mặc định. Ứng dụng có thể chọn tham gia bằng cách khai báo một tác nhân sao lưu. Bật theo mặc định. Ứng dụng có thể chọn không sử dụng bằng cách tắt tính năng sao lưu.
Triển khai Ứng dụng phải triển khai một BackupAgent. Tác nhân sao lưu sẽ xác định những dữ liệu cần sao lưu và cách khôi phục dữ liệu. Theo mặc định, tính năng Tự động sao lưu bao gồm hầu hết mọi tệp của ứng dụng. Bạn có thể dùng XML để thêm và bớt tệp. Trong nội bộ, tính năng Tự động sao lưu dựa trên một tác nhân sao lưu được đóng gói thành SDK.
Tần suất sao lưu Ứng dụng phải đưa ra yêu cầu khi có dữ liệu cần được sao lưu. Yêu cầu từ nhiều ứng dụng được phân theo lô và thực thi vài giờ một lần. Quá trình sao lưu tự động diễn ra khoảng 1 lần/ngày.
Truyền dữ liệu Dữ liệu sao lưu có thể được truyền qua Wi-Fi hoặc dữ liệu di động. Theo mặc định, dữ liệu sao lưu được truyền qua mạng Wi-Fi, nhưng người dùng thiết bị có thể bật tính năng sao lưu sử dụng dữ liệu di động. Nếu thiết bị không bao giờ kết nối với mạng Wi-Fi hoặc người dùng không thay đổi tuỳ chọn sao lưu bằng dữ liệu di động thì tính năng Tự động sao lưu không bao giờ hoạt động.
Điều kiện truyền dữ liệu Xác định các điều kiện cần thiết đối với thiết bị để sao lưu trong onBackup(). Xác định những điều kiện cần thiết đối với thiết bị để sao lưu trong tệp XML nếu dùng tác nhân sao lưu mặc định.
Tắt ứng dụng Ứng dụng không bị tắt trong quá trình sao lưu. Hệ thống sẽ tắt ứng dụng trong quá trình sao lưu.
Bộ nhớ lưu trữ dữ liệu sao lưu Dữ liệu sao lưu được lưu trữ trong Android Backup Service và giới hạn là 5 MB cho mỗi ứng dụng. Google coi dữ liệu này là thông tin cá nhân theo Chính sách quyền riêng tư của Google. Dữ liệu sao lưu được lưu trữ trên Google Drive của người dùng và giới hạn là 25 MB cho mỗi ứng dụng. Google coi dữ liệu này là thông tin cá nhân theo Chính sách quyền riêng tư của Google.
Đăng nhập người dùng Không yêu cầu người dùng đăng nhập vào ứng dụng. Người dùng phải đăng nhập vào thiết bị bằng Tài khoản Google. Không yêu cầu người dùng đăng nhập vào ứng dụng. Người dùng phải đăng nhập vào thiết bị bằng Tài khoản Google.
API Các phương thức API liên quan đều hoạt động dựa theo thực thể: Các phương thức API liên quan đều hoạt động theo tệp:
Khôi phục dữ liệu Dữ liệu sẽ khôi phục khi ứng dụng được cài đặt. Nếu cần, bạn có thể yêu cầu khôi phục theo cách thủ công. Dữ liệu sẽ khôi phục khi ứng dụng được cài đặt. Người dùng có thể chọn trong danh sách các tập dữ liệu sao lưu nếu có nhiều tập dữ liệu.
Tài liệu Sao lưu các cặp khoá-giá trị bằng Android Backup Service Sao lưu dữ liệu người dùng bằng tính năng Tự động sao lưu

Để biết thêm thông tin về cách hoạt động của tính năng sao lưu và khôi phục đối với từng dịch vụ, hãy xem bài viết Kiểm thử tính năng sao lưu và khôi phục.