我已经设法在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)