博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[bmgr]android应用数据备份以及还原
阅读量:6440 次
发布时间:2019-06-23

本文共 1314 字,大约阅读时间需要 4 分钟。

bmgr是一个shell工具你可以用来与备份管理器在Android设备(支持API级别8或更高)。它提供了命令来指导的备份和恢复操作,这样你不需要反复清除数据或采取类似的侵入性的步骤来测试您的应用程序的备份代理。这些命令是通过adb shell。 


使用备份操作 

通常,应用程序必须通知备份管理器在它的数据已经改变。通过dataChanged()。备份管理器将调用您的备份代理的onBackup()实现在未来某个时刻。如果调用dataChanged(),可以调用一个备份请求从命令行运行bmgr备份命令。 


命令: 

adb shell bmgr backup <package> 


当您执行该备份命令,您的应用程序的备份代理将调用来执行备份操作在未来一段时间内(通过你的onBackup()方法),尽管没有保证当它会发生。然而,您可以强制执行所有没有运行的备份操作,通过使用bmgr运行命令: 


命令: 

Adb shell bmgr run 


这个命令会导致所有调用备份代理的应用程序的都备份。 


使用恢复操作 

恢复操作不像备份操作,这是成批的在一起运行在一个偶然的基础上,立即执行恢复操作。备份管理器目前提供了两种类型的恢复操作。 

第一种恢复整个装置的数据备份。典型的表现只有当一个设备是第一个提供(复制设置和其他保存的状态从用户之前的设备),是一个操作,只有系统可以执行。 

第二种恢复操作单个应用程序恢复到它的“活跃的”数据集;也就是说,应用程序将放弃其当前数据和恢复到最后一次正确数据,保存在当前的备份映像。 

您可以调用第二个恢复操作与requestRestore()方法。备份管理器将调用您的备份代理的onRestore()实现。 


当测试您的应用程序,你可以立即调用恢复操作,绕过requestRestore()方法。使用bmgr恢复命令: 

adb shell bmgr restore <package> 

备份管理器将立即实例化应用程序的备份代理和调用它来恢复。这将发生,即使应用程序是当前没有运行。 


其他命令: 

Wiping data(擦拭数据) 


一个应用程序的数据可以被清除从Activity数据集合中。这个操作非常有用,当你在开发一个备份代理。以防错误引导你写错误的数据或保存的状态信息。你可以擦拭一个应用程序的数据与bmgr擦拭命令: 

adb  shell  bmgr  wipe <package> 


接下来的备份操作应用程序的代理进程将看起来好像应用程序从未支持任何东西之前。 


查看backup(备份)是否可用 

adb shell bmgr enabled 


如果备份操作可用的,如果您的应用程序的备份代理是从未被调用备份,以验证操作系统是否认为它应该执行这些操作。 


你也可以直接禁用或启用备份管理器: 

adb shell bmgr enable <boolean> 


警告! 

当备份是禁用的,当前的备份运输将明确地擦拭Activity中的数据。如果当一个用户说他们不希望他们的数据备份,备份管理器方面希望。则没有新的数据将被保存从设备,没有恢复操作将成为完成恢复操作。除非备份管理器是重新启用(通过设置或通过以上bmgr命令)。

转载地址:http://wsuwo.baihongyu.com/

你可能感兴趣的文章
彻底理解javascript中的this指针
查看>>
SAS去空格
查看>>
Spring Cloud构建微服务架构(二)服务消费者
查看>>
这些老外的开源技术养活了一票国产软件
查看>>
Maven实战(六)--- dependencies与dependencyManagement的区别
查看>>
创业者应该有的5个正常心态(转)
查看>>
php模式设计之 注册树模式
查看>>
【Android UI设计与开发】3.引导界面(三)实现应用程序只启动一次引导界面
查看>>
_ENV和_G
查看>>
别做操之过急的”无效将军”,做实实在在的”日拱一卒” 纵使一年不将军,不可一日不拱卒...
查看>>
Oracle Grid Infrastructure: Understanding Split-Brain Node Eviction (文档 ID 1546004.1)
查看>>
Linux改变进程优先级的nice命令
查看>>
**16.app后端如何保证通讯安全--url签名
查看>>
win32窗口机制之CreateWindow
查看>>
C/C++ 一段代码区分数组指针|指针数组|函数指针|函数指针数组
查看>>
awakeFromNib小总结
查看>>
java知识大全积累篇
查看>>
善于总结所做所学的内容
查看>>
Lua-简洁、轻量、可扩展的脚本语言
查看>>
org.hibernate.MappingException: entity class not found hbm可以解析,但是实体类不能解析...
查看>>