У мене є невелика проблема зі створенням каталогу та збереженням файлу в ньому на моєму додатку для Android. Я використовую цей шматок коду для цього:
String filename = "MyApp/MediaTag/MediaTag-"+objectId+".png";
File file = new File(Environment.getExternalStorageDirectory(), filename);
FileOutputStream fos;
fos = new FileOutputStream(file);
fos.write(mediaTagBuffer);
fos.flush();
fos.close();
Але це кидає виняток:
java.io.FileNotFoundException: /mnt/sdcard/MyApp/MediaCard/MediaCard-0.png (такого файлу або каталогу немає)
на цьому рядку: fos = new FileOutputStream(file);
Якщо я встановив для імені файлу значення: "MyApp/MediaTag-"+objectId+"
воно працює, але якщо я спробую створити та зберегти файл в іншому каталозі, це видасть виняток. Тож будь-які ідеї, що я роблю не так?
І ще одне питання: чи є спосіб зробити мої файли приватними у зовнішньому сховищі, щоб користувач не міг бачити їх у галереї, лише якщо він підключив свій пристрій як Disk Drive
?
Environment.getExternalStorageDirectory()
замість/sdcard
.