【发布时间】:2016-05-26 14:17:23
【问题描述】:
我希望实现 Android M 中引入的新自动备份功能,详细信息请参见此处的文档:http://developer.android.com/training/backup/autosyncapi.html#testing
我正在轻松恢复播放器数据库和安装之间的共享首选项,此功能旨在为 Android M 启用。我目前没有实现 android 备份服务。
文档声称它基本上默认启用,不需要编写备份管理类等,至少对于 Android M 设备 - 但是,我无法让它工作。
abd shell bmgr enabled 返回Backup Manager currently enabled
adb shell bmgr run 什么也没说,但是当我运行 adb shell bmgr restore com.xyz.abc 时,我被告知:
Unable to restore package com.xyz.abc
done
文档说adb shell setprop log.tag.BackupXmlParserLogging VERBOSE 将启用日志记录,但我在终端或 logcat 中几乎看不到任何效果,而且我想不出它会登录到其他地方!
根据文档,我的清单在应用程序标记中有 android:fullBackupContent="@xml/backupscheme",并且 backupscheme.xml 包含
<?xml version="1.0" encoding="utf-8"?>
<full-backup-content>
<include domain="database" path="database.db"/>
<include domain="sharedpref" path="com.xyz.abc_preferences.xml"/>
<exclude domain="external"/>
</full-backup-content>
数据库和共享首选项路径来自检查反编译的应用程序,我尝试将这个 xml 剥离为空 - 没有任何变化。
据我从文档中得知,这应该足以让它工作,但是当我卸载并重新安装应用程序时,我没有看到任何东西被保留。
我是否忽略了什么?有没有我没有质疑过的假设?为什么它不能正常工作?!那里的信息太少了,我真的希望其他人正在实施这一点并在这里提供一些指导!
【问题讨论】:
标签: android backup android-backup-service