0

我忙着为 Android 4.4.2 版设计一个应用程序(Android Studio 1.3.1),并希望该应用程序在启动后立即启动。我的问题是它没有,在调试时我发现它抱怨缺少 BackupAgent。我已在清单中将 android:allowBackup 设置为 false,但这似乎无助于消除有关缺少 BackupAgent 的异常。

我是否误解了 android:allowBackup 的目的?

我不需要任何备份。

4

1 回答 1

0

似乎它们彼此不同:

http://developer.android.com/guide/topics/manifest/application-element.html

<application android:allowTaskReparenting=["true" | "false"]
             android:allowBackup=["true" | "false"]
             android:backupAgent="string"

并且:http: //developer.android.com/reference/android/app/backup/BackupAgent.html

在应用程序和 Android 的数据备份基础架构之间提供中央接口。希望参与备份和恢复机制的应用程序将声明 BackupAgent 的子类,实现 onBackup() 和 onRestore() 方法,并通过<application>标签的 android 在其 AndroidManifest.xml 文件中提供其备份代理类的名称:备份代理属性。

你需要在你的ApplicationTAG -> Manifest

android:backupAgent

此外,您可能想看看:

大多数应用程序不需要直接扩展 BackupAgent 类,而是应该扩展 BackupAgentHelper 以利用自动备份和恢复文件的内置帮助程序类。但是,如果需要,您可能希望直接扩展 BackupAgent:

  • 版本化您的数据格式。例如,如果您预计需要修改编写应用程序数据的格式,您可以构建一个备份代理以在恢复操作期间交叉检查您的应用程序版本,并在设备上的版本为与备份数据不同。有关详细信息,请参阅检查还原数据版本

  • 您可以指定应备份的数据部分以及如何将每个部分还原到设备,而不是备份整个文件。(这也可以帮助您管理不同的版本,因为您将数据作为唯一实体而不是完整文件来读取和写入。)

  • 备份数据库中的数据。如果您有一个 SQLite 数据库要在用户重新安装您的应用程序时恢复,您需要构建一个自定义BackupAgent,它在备份操作期间读取适当的数据,然后创建您的表并在恢复操作期间插入数据。
于 2016-01-13T07:58:21.153 回答