我遇到了同样的问题 - 正如在谷歌开发者组中发现的那样。我引用了 Chris Grebeldinger(原作者)的非常详细的解释。
“在文档中:http: //developer.android.com/guide/topics/data/backup.html#Testing
它建议通过以下方式测试应用程序的备份/恢复:
- 安装您的应用
- 确保启用备份/恢复
- 更改一些数据并调用 dataChanged()
- 强制 bmgr 运行备份通道
- 卸载应用程序
- 重新安装应用程序并检查您的数据是否已恢复
一切似乎都很好,直到第 4 步,当我在日志中看到这一点时:
V/BackupManagerService(306): removePackageParticipantsLocked: uid=10078 #1 V/BackupManagerService(306): 移除com.example.app的备份知识
然后是第 5 步:
V/BackupManagerService(306):restoreAtInstall pkg=com.example.app token=21 V/BackupManagerService(306):没有恢复集——跳过恢复
显然,当卸载应用程序时,备份的数据会被破坏,这意味着官方测试工作流程可能无法正常工作?最好的测试方法是什么?”
有没有人设法正确运行和测试这个样本?