Получить изображение из Интернета и сохранить его в памяти телефона?
Мне нужно получить изображение из Интернета и сохранить его в телефоне для последующего использования.
Я попробовал это:
public Drawable grabImageFromUrl(String url) throws Exception
{
return Drawable.createFromStream((InputStream)new URL(url).getContent(), "src");
}
Так что это моя функция, чтобы получить изображение из Url, мне просто нужен процесс, чтобы получить возвращаемое рисование и сохранить.
Как я могу это сделать?
2 ответа
Решение
Посмотрите этот полный пример, приведите здесь
http://android-example-code.blogspot.in/p/download-store-and-read-images-from.html
Исходя из этого, вы можете загрузить изображение, используя другой метод. Обязательно ли хранить его как отрисовку перед сохранением? Потому что я думаю, что вы могли бы сперва сохранить его, а затем открыть, если это будет необходимо.
URL url = new URL ("file://some/path/anImage.png");
InputStream input = url.openStream();
try {
//The sdcard directory e.g. '/sdcard' can be used directly, or
//more safely abstracted with getExternalStorageDirectory()
String storagePath = Environment.getExternalStorageDirectory();
OutputStream output = new FileOutputStream (storagePath + "/myImage.png");
try {
byte[] buffer = new byte[aReasonableSize];
int bytesRead = 0;
while ((bytesRead = input.read(buffer, 0, buffer.length)) >= 0) {
output.write(buffer, 0, bytesRead);
}
} finally {
output.close();
}
} finally {
input.close();
}