Как сохранить файл в общую папку загрузки в Android

#android-studio #kotlin #download #filesystems

Вопрос:

Я хочу добавить возможность резервного копирования базы данных в свое приложение. Мне удалось скопировать базу данных в файл во внутренней папке приложения.

 fun backupDb(): Boolean {
    var result = false
    // сохранение файла с базой данных в папку Backup
    try {
        val sdDir = context.getExternalFilesDir("Backup")
        val data = context.getDatabasePath(DbName.DATABASE_NAME)

        if (sdDir!!.canWrite()) {
            val backup = File (sdDir, DbName.DATABASE_NAME)
            if (data.exists()) {
                val src: FileChannel = FileInputStream(data).channel
                val dst: FileChannel = FileOutputStream(backup).channel
                dst.transferFrom(src, 0, src.size())
                src.close()
                dst.close()
                result = true
            }
        }
        return result
    } catch (e: Exception) {
        e.printStackTrace()
        return result
    }
}
 

Я не понимаю, как сохранить файл в общую папку для загрузки