public static BackupResult simpleBackup(Context context, String appName) { BackupResult result = new BackupResult(); String dbName = ODKFileUtils.getBackupFolder(appName) + generateFileName(context); result.setDatabaseFileName(dbName); FileInputStream fromFile = null; FileOutputStream toFile = null; FileChannel from = null; FileChannel to = null; try { fromFile = new FileInputStream(ODKFileUtils.getCensusDbFullPath(appName)); toFile = new FileOutputStream(dbName); from = fromFile.getChannel(); to = toFile.getChannel(); from.transferTo(0, from.size(), to); result.setSuccess(true); } catch (FileNotFoundException e) { result.setSuccess(false); e.printStackTrace(); } catch (IOException e) { result.setSuccess(false); e.printStackTrace(); } finally { if (fromFile != null) { try { fromFile.close(); } catch (IOException e) { e.printStackTrace(); } } if (toFile != null) { try { toFile.close(); } catch (IOException e) { e.printStackTrace(); } } if (from != null) { try { from.close(); } catch (IOException e) { e.printStackTrace(); } } if (to != null) { try { to.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; }