Запустите поглощенное средство просмотра к изображению на дисплее от URL

У меня есть URL изображения. То, что я должен сделать, запустить программу просмотра изображений по умолчанию для изображений с помощью намерения.

Я пытался запустить его при помощи:

Uri uri = Uri.parse("http://www.google.com/intl/en_ALL/images/srpr/logo1w.png");  
Intent it = new Intent(Intent.ACTION_VIEW);
it.setDataAndType(uri, "image/*")
startActivity(it);

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

Я могу также загрузить изображение в Битовый массив, но я все еще не знал бы, как отобразить Битовый массив с помощью галереи (если это даже возможно). Какие-либо идеи?

Править: Я пытался сохранить битовый массив к кэшу, и затем запустите средство просмотра на том файле, но это не работает. Можно ли определить какие-либо ошибки на моем коде? (Класс Утилит является классом, который я записал. Метод просто создает Битовый массив. Это работает, это не проблема),

File temp = File.createTempFile("tempImage", ".jpg", getContext().getCacheDir());
Bitmap bmp = Utilities.loadBitmap(largeUrl.toString());
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(temp));
bmp.compress(Bitmap.CompressFormat.JPEG, 90, out);
out.close();
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(temp), "image/jpg");
((Activity) getContext()).startActivity(intent);

РЕДАКТИРОВАНИЕ 2: Я решил, что мне, возможно, понадобятся загруженные изображения, в конце концов, таким образом, я решил сначала сохранить их на SD-карте. Это создало другие проблемы. Я задал новый вопрос для этого, так как это - другая проблема.

6
задан Community 23 May 2017 в 12:15
поделиться

2 ответа

Возможно, для галереи требуется сохранение изображения в памяти.

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

(Если вы не хотите, чтобы файл оставался после этого, вы можете просто сохранить его в каталоге данных вашего приложения)

1
ответ дан 17 December 2019 в 20:29
поделиться

Ваш код в порядке, но вам нужно сохранить изображение на SD-карте («временный» файл), чтобы программа просмотра фотографий работала. Проверено на 1.5, 1.6, 2.1.

1
ответ дан 17 December 2019 в 20:29
поделиться
Другие вопросы по тегам:

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