如何从备份代理保存的路径android恢复数据库

时间:2015-01-31 03:48:56

标签: android mysql sqlite android-backup-service

我使用此代码来保存数据库,使用BackupAgent

    public class MyBackupAgent extends BackupAgentHelper {

    String DATABASE_NAME = "mydb";
    String DATABASE_FILE_NAME = "mydb.db";
    @Override
    public void onCreate() {
        SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, PREFS);
        addHelper(PREFS_BACKUP_KEY, helper);

        FileBackupHelper dbs = new FileBackupHelper(this, DATABASE_FILE_NAME);
        addHelper("dbs", dbs);
    }

    @Override
    public File getFilesDir() {
        File path = getDatabasePath(DATABASE_FILE_NAME);
        return path.getParentFile();
    }

}

现在之后我想知道如何恢复数据库? 请帮我解决这个问题,提前致谢

1 个答案:

答案 0 :(得分:1)

理论上只有AndroidManifest上的代码和更改,备份应该按照Android Google页面通知。

请查看此页面:http://developer.android.com/guide/topics/data/backup.html

上述页面摘要:

要实施备份代理,您必须:

1 - 使用android:backupAgent属性在清单文件中声明备份代理。 2 - 使用备份服务注册您的应用程序。 Google为大多数Android设备提供Android备份服务作为备份服务,这要求您注册应用程序以使其正常运行。任何其他可用的备份服务可能还需要您注册才能将数据存储在其服务器上。 3 - 通过以下任一方式定义备份代理:扩展BackupAgent或扩展BackupAgentHelper;