Остановить показ изображений на SD-карте в галерее?

Я сохраняю некоторые png файлы на SD-карте пользователя. Некоторые пользователи сообщают, что эти изображения отображаются в приложении для галереи. Похоже, что реализация галереи на некоторых устройствах просматривает любые файлы изображений, которые они могут найти на SD-карте, и показывать их в галерее. Есть ли способ сказать системе не включать эти изображения в галерею? Это просто раздражает пользователей.

Спасибо

Ответы

Ответ 1

Вы можете скрыть отдельные файлы из галереи с префиксом .. Например .myimage.png

Я не уверен, какие версии зависимостей выше, и он не работает с некоторыми сторонними инструментами изображения, такими как Галерея.

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

Я думаю, что вариант .nomedia - лучшее решение, но, опять же, сторонние инструменты могут не уважать флаг .nomedia.

Ответ 2

Скрытие ваших файлов с носителя

Сканер Включите пустой файл с именем .nomedia в ваших внешних файлах (обратите внимание на префикс точки в имя файла). Это предотвратит Android медиа-сканер от чтения медиафайлов файлы и их включение в приложениях, таких как Галерея или Музыка.

В http://developer.android.com/guide/topics/data/data-storage.html#filesExternal

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

Ответ 3

просто сохраните файлы в папке и назовите папку, начинающуюся с символа '.'

например:

Фотографии Видео .private → не будет сканироваться для каких-либо носителей Eboks

Ответ 4

Наряду с этими решениями использование picasa также является альтернативой... и предложения .nomedia или .foldername полезны, но...

Включая принятый ответ, ни одно из решений не устраняет проблему с обложками альбомов. Большое количество пользователей android хранят обложки альбомов в папке альбома, а .dirname или .nomedia-решения скрывают все как от галереи, так и от музыкального проигрывателя. Необходимая функциональность скрывается от галереи и отображается в музыкальном проигрывателе (иначе нет причин не удалять обложки, если мы не увидим их правильно?)

Вот решение:

Rename all album cover picture files to albumart.jpg 

(или какую картину вы хотите скрыть от галереи)

В этом случае галерея не будет включать их, и музыкальный проигрыватель все равно будет использовать:) В качестве альтернативы для любой папки, если вы поместите файл folder.jpg в нее, этот файл будет игнорироваться приложением галереи.

Как вы можете видеть, мы можем исключить только max 2 файла (изображения) из приложения галереи, не более: (

После этого вам не нужно чистить кеши галереи и медиа-сканера и перезагружать (еще один вариант), просто запустите приложение, которое запускает сканирование носителей при каждом запуске. Я предпочитаю сводку, она обновляет медиа-галерею при каждом запуске на фотографиях, но есть много приложений, возможно, у вас уже есть один, просто не нужно устанавливать приложение только для этой операции сканирования медиа.

Источник знаний: http://code.google.com/p/android/issues/detail?id=35879

Ответ 5

При создании внешнего каталога используйте что-то вроде этого

File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory("YourDirectoryName"),"YourFolderName");

Вместо

File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "YourFolderName");

Эти файлы не будут обнаружены в галерее для дополнительной проверки ссылок на сохранение медиафайлов по этой ссылке

http://developer.android.com/guide/topics/media/camera.html#intent-receive

Ответ 6

Ни Windows, ни Android не позволяют создавать файл .nomedia Он рассматривается как расширение файла без имени.

Ответ 7

Вы можете легко создать папку в Windows с помощью Powershell

New-Item -path 'C:\Users\Google Drive\Pictures\.nomedia' -itemtype directory

Ответ 8

Я пробовал все, но только это решение работало на 100%, вам нужно подключить ваш urb и отформатировать окно быстрого форматирования sdcard и нажать на восстановление значений по умолчанию, а затем отобразит все в галерее ur только вам нужно переместить все ваши изображения снова:)