针对Backup功能的前作足足三万字,立足点比较大,本篇将针对实战环节单独解读。
手机等智能设备是现代生活中的重要角色,我们会在这些智能设备上做登录账户,设置偏好,拍摄照片,保存联系人等日常操作。这些数据耗费了我们很多时间和精力,对我们而言极为重要。
如果我们的设备换代了或者重新安装了某个应用,之前使用的数据如果能自动保留,那将是非常出色的用户体验。而保留数据的第一步则在于Backup环节。
一、基本认识
备份的数据可以笼统地划分为三类:登录账号相关的身份数据、系统设置相关的偏好以及各App的数据。本次讨论的对象在于App数据。
而App数据基本涵盖在如下类型。
类型 | 路径 | 取得对应文件的API |
---|---|---|
data |
/data/data/com.xxx/ | getDataDir()/getDir() |
files |
/data/data/com.xxx/files/ | getFilesDir() |
databases |
/data/data/com.xxx/databases/ | getDatabasePath() |
sharedpreferences |
/data/data/com.xxx/sp/ | getSharedPreferences() |
Backup操作从最外层的data目录开始,按照文件单位逐个读取逐个备份。目录内的文件一般按照文件名的顺序进行备份,但这个顺序无法保证,取决于File#list()
API的结果。
喜欢就支持一下吧
相关推荐