В своем приложении я добавил возможность добавлять и сохранять изображения на каждый день, представленные Fragment
.
Для того, чтобы сохранить картинку на SD-карту, я сейчас использую функцию File.createTempFile
:
File imageFile = File.createTempFile(imageFileName, MyApplication.JPEG_FILE_SUFFIX, MyApplication.getAlbumDir());
Я на самом деле также пробовал стандартным способом:
File imageFile = new File(MyApplication.getAlbumDir(), imageFileName + MyApplication.JPEG_FILE_SUFFIX);
Оба работают, но в моем случае первый лучше второго, потому что функция createTempFile
добавляет длинное случайное число в конце имени файла, делая его уникальным.
Чтобы дать вам пример, вот что я получаю с обоими методами:
С помощью createTempFile: IMG_2013-06-18_-1961144729.jpg
С новым файлом: IMG_2013-06-18_.jpg
Наконец, мой вопрос: безопасно ли продолжать использовать createTempFile
для сохранения моих изображений или мне нужно использовать стандартный способ и добавить некоторый код для создания уникального имени файла? Должен ли он использоваться только для временных файлов?
Я просмотрел документацию по функции, но ничего не нашел о возможных последствиях использования ее вместо new File
.
Спасибо