Я пытаюсь скопировать некоторые файлы из папки «Активы» (а также создать несколько новых файлов) во внешнюю папку.Как хранить файлы в указанном внешнем каталоге в Android
Я знаю, что мне нужно будет следующие разрешения -
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Тогда, я должен проверить состояние внешнего хранения следующим образом (пример кода, используемый с официальным примером андроида) -
/* Checks if external storage is available for read and write */
public boolean isExternalStorageWritable() {
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)) {
return true;
}
return false;
}
/* Checks if external storage is available to at least read */
public boolean isExternalStorageReadable() {
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state) ||
Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
return true;
}
return false;
}
Тогда , Я могу использовать getExternalFilesDir()
as -
String finalOutputFilePath = context.getExternalFilesDir(null) + "/" + databaseName;
и он сохранит файл где-то нравится - Android/data/myPackageName/files/
Но я хочу, чтобы файлы, которые будут храниться в определенной папке, например -
- Создайте папку с именем «MyTestDirectory», если уже не существует в в база внешнего хранения (я не пишу SDCARD/MyTestDirectory, как я прочитал, что внешнее запоминающее устройство номенклатуры может отличаться одноранговой) и
- магазин/скопировать файлы в этой папке только
Итак, мой вопрос заключается в том, как выбрать (создать &) указанную папку?
P.S. - Наверное, на этот вопрос, возможно, уже был дан ответ на SO, но я не мог его найти.
Благодарим вас за ответ. Дайте мне немного времени, чтобы проверить его, и я буду отмечать его как принятый ответ, как только мне удастся. –