У меня от одной до трех фотографий, которые я хотел бы показать в своем приложении.До времени выполнения я не буду точно знать, сколько фотографий загружено из Интернета.
Я не могу понять, как создать Намерение для отображения фотографий.Сейчас я кеширую их на SD-карте в папке, которую я создаю, выполняя что-то вроде (без проверки ошибок):
final File externalDirectory = Environment.getExternalStorageDirectory();
final String folder = externalDirectory.getAbsolutePath() + "/Android/data/" + packageName + "/files/";
Это было объяснено в Справочнике разработчика Android .
Я могу получить одну фотографию для показа, выполнив следующие действия:
final Uri uri = Uri.fromFile(file);
final Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, "image/*");
Util.startActivity(this, intent);
Где file
- файл сохраненной фотографии.
Если это поможет, я мог бысохраните изображения в любом месте, доступном для моего приложения, однако я бы предпочел не отображать фотографии в списке вместе с другими личными фотографиями пользователя, так как это может раздражать.
В программе просмотра изображений есть пункт меню «Слайд-шоу», поэтому он должен знать о нескольких фотографиях.
Я мог бы создать свой собственный Просмотрщик изображений, но это кажется дополнительной работой и сверх того, что я бы разумно ожидал.Даже если бы я это сделал, я бы хотел, чтобы пользователь мог установить стороннюю программу просмотра изображений и получить более удобную работу с панорамированием, масштабированием, совместным использованием, ...
Я пытался использовать каталог кэшированногофото файлы для создания Uri, но просмотрщик изображений показывает черную страницу.Если я передаю файл, он показывает только один файл, а другие нет.
Я знаю, что это должно быть возможно, потому что я вижу, что использую приложение Галерея и показываю фотографии, если я вручную выбираю папку.Каждый раз, когда я исследую эту проблему, в комментариях говорится, что невозможно показать несколько изображений.
Я подозреваю, что есть какое-то магическое заклинание, но что?