No post anterior vimos como gerar backup, agora vamos ver como restaurá-lo. Segue um exemplo de código para restauração do banco.

public void restaurarBackup() {
	try {
		gerarBackup(true);
		File sd = Environment.getExternalStorageDirectory();
		File data = Environment.getDataDirectory();
		if (sd.canWrite()) {
			String currentDBPath = "//data//br.com.j2v.app.nomeAplicativo//databases//dbNAME";
			String backupDBPath = "bkps/dbNAME.db"; //-- Caminho do arquivo de backup a ser restaurado
			File backupDB = new File(data, currentDBPath);
			File currentDB = new File(sd, backupDBPath);

			FileChannel src = new FileInputStream(currentDB).getChannel();
			FileChannel dst = new FileOutputStream(backupDB).getChannel();
			dst.transferFrom(src, 0, src.size());
			src.close();
			dst.close();
			Toast.makeText(getApplicationContext(), "Backup restaurado com sucesso!", Toast.LENGTH_LONG).show();
		}
	} catch (Exception e) {
		Log.e("J2V", e.toString());
		Toast.makeText(getApplicationContext(), "Erro ao tentar restaurar backup!", Toast.LENGTH_SHORT).show();
	}
}