相关疑难解决方法(0)

使用Google Drive备份和还原SQLite数据库

我已经设法在SD卡上创建我的数据库备份并从那里恢复,但意识到我的备份的目的是确保数据的安全性,在这种情况下,如果物理设备本身损坏,丢失或自发地燃烧SD卡上的备份.因此,在这种情况下将备份放在与原始备份相同的位置,坦率地说,无法实现备份的目的.

因此,我想使用Google Drive作为保存db文件更安全的地方,而且它是免费的.我已经看了谷歌的快速启动演示,我工作得很好.但我仍然不知道如何为我的案子做到这一点.

我发现了一些代码,但仍然使用了一些弃用的方法,到目前为止,我只是在省略不推荐使用的区域时设法运行它,但它只在我的Google云端硬盘中创建了一个空白的二进制文件,所以我认为不推荐使用的区域是实际上传数据库备份内容的地方.如果有人可以提供帮助,那将非常感激.

我会把它留在下面,万一有人可以用它来更好地向我解释.我还在下面标记了已弃用的方法,它已接近尾声.

public class ExpectoPatronum extends Activity implements ConnectionCallbacks, OnConnectionFailedListener {

private static final String TAG = "MainActivity";
private GoogleApiClient api;
private boolean mResolvingError = false;
private DriveFile mfile;
private static final int DIALOG_ERROR_CODE =100;
private static final String DATABASE_NAME = "demodb";
private static final String GOOGLE_DRIVE_FILE_NAME = "sqlite_db_backup";

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Create the Drive API instance
    api = new GoogleApiClient.Builder(this).addApi(Drive.API).addScope(Drive.SCOPE_FILE).
            addConnectionCallbacks(this).addOnConnectionFailedListener(this).build();
}

@Override
public void onStart() {
    super.onStart();
    if(!mResolvingError) …
Run Code Online (Sandbox Code Playgroud)

android google-drive-api google-drive-android-api

14
推荐指数
1
解决办法
2万
查看次数