Список Android все доступные изображения

Я подаю заявку, которая требует, чтобы я перечислил все изображения, доступные на SD-карте телефона.

я пытался запросить ContentResolver путь т.е.

Cursor image = getContentResolver().query(Images.Media.EXTERNAL_CONTENT_URI, new String[]{Images.Media._ID,Images.Media.DATA,Images.Media.DISPLAY_NAME}, null, null, null);

но без любого результата. Есть ли какой-либо способ, которым я могу получить список или если это не возможно, затем там какое-либо возможное намерение (например, Выбор), которым я могу позволить пользователю выбирать файл и затем получать доступ к пути файла, который выбрал пользователь??

Парни Helppppp...

5
задан JaVadid 11 June 2010 в 05:51
поделиться

2 ответа

Вы можете использовать действие галереи для выбора изображений, примерно так:

Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Picture"),SELECT_IMAGE);

в обратном вызове для действия uri файла будет в параметре намерения

1
ответ дан 13 December 2019 в 22:02
поделиться
//where contextObject is your activity
ContentResolver cr = contextObject.getContentResolver();

String[] columns = new String[] {
                ImageColumns._ID,
                ImageColumns.TITLE,
                ImageColumns.DATA,
                ImageColumns.MIME_TYPE,
                ImageColumns.SIZE };
cur = cr.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
                columns, null, null, null);

Мой код очень похож на ваш (за исключением того, что он не работает), и он работает. Вам не нужно спрашивать про что-то у намерения галереи, оно должно работать. Мои две догадки:

1) Убедитесь, что USB-накопитель не смонтирован, в противном случае вы не увидите внешних образов.

2) Может быть проблема с разрешениями? Попробуйте добавить разрешение GLOBAL_SEARCH, чтобы узнать, помогает ли это вообще.

9
ответ дан 13 December 2019 в 22:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: