gianlazz / Cogneat

Cogneat™ Keeping your cognition neat and tidy
1 stars 0 forks source link

Backup sqlite data and import it just in case(Ideally to the cloud, securely) #69

Open gianlazz opened 8 years ago

gianlazz commented 8 years ago

https://www.google.com/search?client=safari&rls=en&q=how+to+backup+your+app+database+android+studio&ie=UTF-8&oe=UTF-8

gianlazz commented 8 years ago

https://www.google.com/search?client=safari&rls=en&q=how+to+backup+your+app+database+android+studio&ie=UTF-8&oe=UTF-8

gianlazz commented 8 years ago

http://stackoverflow.com/questions/13502223/backup-restore-sqlite-db-in-android

In the folder "/data/data/'your.app.package'/databases/" you have a .db file that is your database. You can copy that file, save it, and then place it back there again.

One example on how to backup the database to the external storage:

final String inFileName = "/data/data/<your.app.package>/databases/foo.db";
File dbFile = new File(inFileName);
FileInputStream fis = new FileInputStream(dbFile);

String outFileName = Environment.getExternalStorageDirectory()+"/database_copy.db";

// Open the empty db as the output stream
OutputStream output = new FileOutputStream(outFileName);

// Transfer bytes from the inputfile to the outputfile
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer))>0){
    output.write(buffer, 0, length);
}

// Close the streams
output.flush();
output.close();
fis.close();
gianlazz commented 8 years ago

http://stackoverflow.com/questions/1995320/how-do-i-backup-a-database-file-to-the-sd-card-on-android

SQLite databases are completely self-contained files and are portable — you can just copy the entire file straight to the SD card.

Though first I'd check whether an SD card is installed in the device, and what its path is (using Environment.getExternalStorageDirectory()).