我想使用BackupManager
为我的应用支持数据库。该文档讨论了BackupAgent
和BackupAgentHelper
,并指出如果您有数据库,则要使用BackupAgent
。
另一方面,BackupAgentHelper
有一个整洁FileBackupHelper
,使事情变得非常简单。
我的问题:
1)是否可以使用FileBackupHelper
备份/ data / data /< myapp> / databases中的.sqlite文件?
2)如果没有,是否可以使用SQLiteOpenHelper
和onBackup()
内的onRestore()
方法(onCreate / onUpgrade备份/恢复)?
答案 0 :(得分:0)
有可能。当您扩展 BackupAgentHelper 并实施其 onCreate()时,您可以在其中执行以下操作:
addHelper(STATS_BACKUP_KEY, new DbBackupHelper(this, "my_db_name"));
您的DbBackupHelper类可能如下所示:
public class DbBackupHelper extends FileBackupHelper {
public DbBackupHelper(Context ctx, String dbName) {
super(ctx, "../databases/" + dbName);
}
}
有关完整示例,请查看GitHub上的Andlytics项目:AndlyticsProject。