2015-09-14 2 views
1

Я ищу способ поиска и загрузки изображений из папки «Изображения» в зависимости от даты создания. Например, я хочу загрузить все снимки, сделанные за последний месяц, но я не знаю их имени.Загрузить изображения в зависимости от даты создания

Я уже прочитал о Picasso библиотека, но как указано в документации, требуется URL-адрес.

Так что вместо сканирования всей папки, а затем проверки даты создания, существует ли более быстрый способ выполнить эту задачу?

Благодаря

+0

Для ранее существовавших папок не должно быть никакого ярлыка, так как записи каталога файлов не сортируются по дате создания и нет системного вызова для возврата файлов с определенным диапазоном даты создания. – headuck

ответ

1

Возможно, это может сработать для вас. Вы также можете добавить предложения выделения для запроса, например, для фильтрации файлов по дате.

Uri uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; 
Cursor cursor = getContentResolver().query(uri, new String[] {MediaStore.Images.Media.DATA}, null, null, MediaStore.Images.Media.DATE_ADDED + " ASC"); 
if (cursor != null) { 
    while (cursor.moveToNext()) { 
     Uri imageUri = Uri.parse(cursor.getString(0)); 
    } 
    cursor.close(); 
} 
+0

Я попытался добавить следующее условие: «MediaStore.Images.Media.DATE_ADDED +»> «+ minDate», где 'minDate' задается методом getTime(), примененным к объекту Date, но minDate кажется слишком большим, а затем запрос не выполняется Не возвращай никакого результата. В чем может быть проблема? –

+0

Ваш запрос кажется неправильным, я тестировал этот «Курсор курсор = getContentResolver(). Query (uri, new String [] {MediaStore.Images.Media.DATA}, MediaStore.Images.Media.DATE_ADDED +">? ", новый String [] {date.toString()}, MediaStore.Images.Media.DATE_ADDED + "ASC"); 'и все было в порядке. – dtx12

+0

он еще не работает. Это код для создания даты: 'String string_date =" 01-01-2013 "; SimpleDateFormat f = новый SimpleDateFormat (" dd-MM-yyyy "); date = f.parse (string_date); ' –

2

Использование Отметка во время хранения изображений

String currentDateTimeString = DateFormat.getDateTimeInstance().format(new Date()); 

Дайте это как имя файла. Это работает только в том случае, если вы используете отдельную операцию для щелчка изображений.