Android官方命令深入分析之bmgr
2015-07-29 11:04
288 查看
作者:宋志辉
bmgr是一个可以跟Backup Manager进行交互的shell工具,要使用这个工具,Android设备API最小为8.它提供了备份和恢复操作的命令,所以你无需频繁的清除数据。这些命令通过adb shell进行访问。
<包名>是你计划备份的应用的包名。当你执行这个备份命令时,你的应用的备份代理将会被调用通过onBackup()方法执行一系列的备份操作,但是不能确定什么时候会执行。然而,你可以通过bmgr run 命令强制立即执行备份操作:
这可以导致备份操作立即执行。触发所有的应用的备份代理,在上一次备份操作完成后调用dataChanged()方法。任何应用都可以通过bmgr backup进行手动计划备份。
当你测试你的应用时,你可以通过bmgr restore命令来实现恢复操作:
是指要恢复的应用的报名。Backup Manager将会立即执行恢复操作,前提是,应用当前没有运行。
单个应用的数据可以根据需求从活跃数据组中擦除。这在你开发备份代理时是非常有用的,防止bugs导致写入坏的数据或者保存状态信息。你可以通过bmgr wipe命令来擦除应用的数据。
是指你希望擦除数据的应用的包名。下一次的备份操作应用将被视为之前从未进行过备份。
启用和禁止备份
可以通过bmgr enbled命令对Backup Manager进行启用。
这个命令对于你的应用从来没有调用备份代理来进行过备份来说,非常有用。用来验证操作系统是否认为需要执行类似操作。
你也可以通过如下命令禁用Backup Manager:
警告:当备份被禁止后,已经备份的数据会被清空。
bmgr是一个可以跟Backup Manager进行交互的shell工具,要使用这个工具,Android设备API最小为8.它提供了备份和恢复操作的命令,所以你无需频繁的清除数据。这些命令通过adb shell进行访问。
强制备份
正常情况下,你的应用在它的数据发生更改时,必须通过dataChanged()方法通知Backup Manager。Backup Manager接下来在将来的某个时间调用你的备份代理的onBackup()方法。然而,除了调用dataChanged()方法之外,你可以通过运行bmgr backup命令来发起一个备份请求。adb shell bmgr backup <包名>
<包名>是你计划备份的应用的包名。当你执行这个备份命令时,你的应用的备份代理将会被调用通过onBackup()方法执行一系列的备份操作,但是不能确定什么时候会执行。然而,你可以通过bmgr run 命令强制立即执行备份操作:
adb shell bmgr run
这可以导致备份操作立即执行。触发所有的应用的备份代理,在上一次备份操作完成后调用dataChanged()方法。任何应用都可以通过bmgr backup进行手动计划备份。
强制恢复
不同于备份操作,恢复操作立即执行。Backup Manager现在提供了两种恢复操作。第一种是整个设备的数据进行备份,这通常发生在设备在第一次使用时,并且只有系统才能执行。第二种恢复操作恢复单个应用的活跃数据设置,这就意味着,应用将禁止当前的数据并且用最后一次备份的数据进行替代。可以通过调用requeRestore()方法调用。Backup Manager会调用你的备份代理的onRestore()方法。当你测试你的应用时,你可以通过bmgr restore命令来实现恢复操作:
adb shell bmgr restore <package>
是指要恢复的应用的报名。Backup Manager将会立即执行恢复操作,前提是,应用当前没有运行。
其他命令
清除数据单个应用的数据可以根据需求从活跃数据组中擦除。这在你开发备份代理时是非常有用的,防止bugs导致写入坏的数据或者保存状态信息。你可以通过bmgr wipe命令来擦除应用的数据。
adb shell bmgr wipe <package>
是指你希望擦除数据的应用的包名。下一次的备份操作应用将被视为之前从未进行过备份。
启用和禁止备份
可以通过bmgr enbled命令对Backup Manager进行启用。
adb shell bmgr enabled
这个命令对于你的应用从来没有调用备份代理来进行过备份来说,非常有用。用来验证操作系统是否认为需要执行类似操作。
你也可以通过如下命令禁用Backup Manager:
adb shell bmgr enable <boolean>
警告:当备份被禁止后,已经备份的数据会被清空。
相关文章推荐
- Android的异步任务AsyncTask详解
- Android Intent.action 大全
- android 八个月学习计划表
- android-javascript调用java方法获取html内容
- Android中自定义View的MeasureSpec使用
- Android ActionBar样式的改变
- 菜鸟之路之Handler深入理解 参考翔哥文章
- androidの当前时间动态显示
- Android Intent Action 大全
- Android Studio 快捷键
- android studio 更改背景和设置字体大小
- 我的Android进阶之旅------>Android关于ImageSpan和SpannableString的初步了解
- 【Android 工具类】常用工具类(方法)大全
- Android Fragment 你应该知道的一切
- android-RelativeLayout实现顶部、中部、底部布局
- Android布局中match_parent和fill_parent的用法和区别
- android webview js交互 第一节 (java和js交互)
- Android Fragment 真正的完全解析(下)
- android多线程下载
- Android Fragment 真正的完全解析(上)