我正在查看 AndroidManifest 文件,android:backupAgent并且根据文档看到条目android:backupAgent是
实现 BackupAgent 以管理应用程序设置到外部存储的备份和恢复的类的名称。
但我找不到BackupAgent接口或任何其他文档。有人可以指出我正确的方向吗?
我正在查看 AndroidManifest 文件,android:backupAgent并且根据文档看到条目android:backupAgent是
实现 BackupAgent 以管理应用程序设置到外部存储的备份和恢复的类的名称。
但我找不到BackupAgent接口或任何其他文档。有人可以指出我正确的方向吗?
BackupAgent 的 API 还没有固化,所以它是一个隐藏类。 您可以在 Android 的 git 上查看它,其中有以下评论:
/**
* This is the central interface between an application and Android's
* settings backup mechanism.
*
* @hide pending API solidification
*/
我所能提供的只是源android.app.BackupAgent代码android.backup.BackupManager和.
BackupAgent是一个抽象类,根据源代码中的 javadoc,它“是应用程序和 Android 设置备份机制之间的中央接口”。它有抽象onBackup()和onRestore()方法。
还有BackupManager. javadoc 说“BackupManager是系统备份服务的接口。应用程序只需实例化一个,然后使用该实例与备份基础设施进行通信。” 它有一个dataChanged()调用方法来安排备份和一个beginRestoreSession()方法来开始恢复。
现在,代码中有趣的事情BackupManager是:
*
* @hide pending API solidification
*/
和:
/** @hide TODO: REMOVE THIS */
public static final boolean EVEN_THINK_ABOUT_DOING_RESTORE = true;
因此,这似乎仍在进行中,并且EVEN_THINK_ABOUT_DOING_RESTORE成员变量是禁用备份功能的一种简单方法。我的猜测是它在生产 Android 版本中被禁用。